본문 바로가기
RPA/UiPath 강좌

[UiPath-013] 화면캡춰

by 천왕지짐 2023. 4. 22.
인터넷 사이트를 돌아다니다 보니 원했던 책이 많이 있는 사이트를 발견했다. 다운로드 받고 싶었는데 버튼을 눌러 한페이지씩 넘겨 봐야만 하는 사이트였다. 캡처라도 하고 싶은데 80권에 수백페이지를 다 캡처한다는 것은 쉽지않은 일이다. 물론 원했던 책이었으니 시간이 걸리더라도 캡처하고 싶은 마음은 굴뚝같다. 예전같으면 한페이지씩 넘겨가며 캡춰했을 것 같다.  UiPath를 이용해 버튼을 한번씩 클릭하면서 캡처해 보자. 불법 사이트인지 몰라서 사이트 URL은 임의로 작성했다.

 

화면 캡처하기

 

1) 프로세스 만들기
     - 앞 부분 생략하니 이전 강의를 참조한다.

 

2) 화면 캡처가 요구되는 사이트를 미리 열어놓는다.

 

3) 【Take Screenshot 액티비티】를 가져다 놓는다.

   - [화면에 표시]를 누른다음 웹 브라우저에 표시된 해당 페이지를 클릭한다.

   - 속성의 [출력] - [스크린샷]에서 Ctrl + k를 눌러 변수를 생성한다.(예를 들어 capimg)

 

4) 변수에 저장된 이미지(*.png)를 저장하기 위해 【Save Image 액티비티】를 가져다 놓는다.

   - 이미지에는 위에서 생성한 변수를 지정한다. (예를 들어 capimg)

   - 파일 이름에는 저장할 파일 이름을 입력한다. (예를 들어 "인문학\" + CStr(n) + ".png"처럼 입력했다.

     (인문학1.png, 인문학2.png, 인문학3.png...인문학352.png 처럼 번호를 증가시키기 위해 정수 n을 문자화 했다.)

   - CStr(n)에서 n값의 초기값을 부여하기 위해 【Assign 액티비티】를 가져다 놓는다. 이 액티비티는 윗부분에 위치시킨다.

 

5) 브라우저에서 다음 버튼을 누르기 위해 【Click 액티비티】를 가져다 놓는다.

   - [화면에 표시]를 누른다음 웹 브라우저에서 버튼을 선택한다.

 

6) 반복을 해야하므로【While 액티비티】를 가져다 놓는다.

   - 캡처할 해당 웹페이지가 265페이지라는 가정으로 조건은 n <= 265로 입력한다.

   - 【Assign 액티비티】를 이용하여 1씩 증가시키도록 한다.

7) 전체 프로세스는 다음과 같다.

참고) 확인해본 결과 캡처해야할 전체 페이지는 2만 페이지가 넘었다. 캡춰하고 이름 지정하면서 저장하고 다음버튼 클릭하는 것을 반복해야 하는데  5초씩만 걸리다해고 작업시간이 총 10만초 즉, 28시간 이상 걸리는 작업이다. 이 또한 쉬지 않고 했을 때의 시간이다. UiPath가 참 대단하고 사랑스럽다.

 

댓글