반응형
안녕하세요. 엔지엠소프트웨어입니다.
웹 API를 이용한 RPA 업무 자동화는 보통 하나의 창에서 작업이 이루어집니다.
하지만 좀 더 고차원적인 자동화를 구현하려면, 새 창, 새 탭, iframe 등 브라우저 내 다양한 제어 대상으로 자유롭게 이동할 수 있어야 합니다.
이번 포스팅에서는 웹 브라우저 탭과 새 창을 제어하는 방법을 예제와 함께 살펴보겠습니다.
🔹 1. 스크립트 생성 및 웹 API 연결
테스트를 위해 엔지엠 에디터를 실행하고, 새로운 스크립트를 생성합니다.
- 웹 API [연결] 액션 추가
- 웹사이트 주소: http://ngmsoftware.com/bbs/board.php?bo_table=notice&wr_id=450
- 액션 속성은 아래 그림과 같이 설정
웹사이트로 이동하면 공지사항 페이지가 나타납니다.
여기서 "관리자에게 1:1 문의" 링크를 클릭하면, 카카오톡 1:1 문의창이 새 탭으로 열리게 됩니다.
🔹 2. 버튼 클릭 액션 추가
- [버튼] 액션 추가
- 요소 이름: //*[@id="bo_v_con"]/p[4]/span/span/a
- xpath를 사용해 DOM 엘리먼트를 찾음
- 유니크한 id나 이름이 있다면 그것을 사용해도 됨
기본적인 HTML 구조와 DOM에 대한 이해가 필요합니다.
- 새 창이 열리고 페이지가 완전히 로딩될 때까지 [지연] 액션 추가
새로 열린 창은 카카오톡 1:1 연결 창입니다.
🔹 3. 오픈채팅 참여 버튼 클릭
- "1:1 오픈채팅 참여하기" 버튼 클릭
- 웹 API [버튼] 액션 추가
- 요소 이름: //*[@id="btn_chat"]
- 실행 후 확인
- 버튼을 클릭하지 않고 스크립트가 완료될 수 있음
- 이유는 핸들값 관리 방식 때문입니다.
🔹 4. 핸들값 이해하기
- 연결 액션에서 처음 열리는 창이 메인 핸들로 선택됩니다.
- 브라우저의 탭이나 새 창은 각각 고유한 핸들값을 가집니다.
- 버튼 클릭으로 새 탭이 열리더라도, **현재 선택된 핸들(메인 창)**에 명령이 수행됩니다.
- 따라서 새 탭이나 새 창이 만들어지면, 연속 작업이 정상적으로 진행되지 않을 수 있습니다.
아래 그림을 보면 새 탭이 열리면서 윈도우 핸들이 2개가 된 것을 확인할 수 있습니다.
🔹 5. 정리
- 엔지엠 RPA 매크로를 사용하면, 단순 웹 API 자동화 이상으로 새 창, 탭, iframe 제어가 가능합니다.
- 다만, 새 창/탭은 고유 핸들을 가지므로 핸들 전환 로직이 필요합니다.
- 브라우저 자동화 시, DOM 요소 찾기(xpath, id, name 등)와 로딩 지연 관리가 필수입니다.
이번 포스팅에서는 웹 브라우저 탭과 새 창 제어의 기본 원리를 소개했습니다.
다음 글에서는 핸들값 전환과 새 창 자동 클릭 루틴 구현까지 실습 예제로 보여드리겠습니다.
📌 추천 태그
#엔지엠소프트웨어 #RPAmacro #웹API자동화 #브라우저제어 #탭제어 #iframe제어 #업무자동화 #웹스크래핑 #RPA #자동화매크로
반응형
'업무 자동화 매크로' 카테고리의 다른 글
이미지 서치 vs 이미지 매치 vs 픽셀 서치 속도 비교 (0) | 2025.09.18 |
---|---|
올리디버거(Olly Debugger)와 엔지엠 RPA 매크로 메모리 읽기 예제 (0) | 2025.09.18 |
🚀 엔지엠 RPA 매크로 커스텀 모듈로 유튜브 댓글 수집하기 (0) | 2025.09.17 |
📡 엔지엠 RPA 매크로 + 텔레그램으로 원격 제어하기 (0) | 2025.09.17 |
아웃룩 연동으로 메일 자동 발송하기 (0) | 2025.09.17 |