본문 바로가기
RPA/UiPath 강좌

[UiPath-007] PDF(Portable Document Format) 다루기

by 천왕지짐 2023. 4. 2.

 

✅ PDF는 우리말로는 휴대 가능한 (즉 들고 다닐 수 있는) 문서 형태를 말한다. 가지고 다닌다는 의미보다는 아마도 별도의 프로그램을 따로 설치하지 않고 쉽게 사용할 수 있다는 뜻이 아닐까 싶다. PDF파일은 크게 Native-text format과 Scanned image 2종류로 나눌 수 있는데 각각 텍스트를 추출하는 방법에 대해 알아보도록 하자.

 

물론 PDF 파일에서 마우스 드래그로 데이터를 긁었을 때 각각의 텍스트가 블록으로 지정된다면 Native-text format으로 별도의 프로그램없이 손쉽게 데이터 추출이 가능한다. 

 

하지만 문서 전체가 블록으로 지정된다면 Scanned image로 OCR(optical character recognition)을 활용해야 데이터 추출이 가능해진다. 즉, Scanned image의 경우 텍스트가 아니라 이미지로 인식되고 OCR을 통해 텍스트를 읽어내기 때문에 그 결과 값이 100% 정확하지는 않을 수도 있다.

PDF 파일에서 텍스트 뿐만 아니라 이미지를 읽어와서 텍스트로 변형시킬 수 있다니 놀라울 따름이다.


Native-text format PDF 읽기

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

 2) Step 1. PDF 패키지 설치하기
     - 액티비티에서 PDF를 입력해도 아무것도 나오지 않음
     - 리본메뉴의 [패키지관리] 클릭 - [공식] - 사전 release 포함시키지 말고 PDF 검색

     - UiPath.PDF.Activities 선택 후 설치 저장버튼 클릭하여 설치하기
     - 이후에 액티비티 창에서 PDF로 검색하면 Export PDF  Page As Image, Read PDF Text 등 다양하게 검색됨

 3) Step 2. Read PDF Text 액티비티 사용하기
     - Read PDF Text 액티비티를 가져다 놓는다.(샘플 PDF가 없는 경우에는 구글 검색창에 Ubiquitous computing pdf로 검색하면 (PDF) Chapter I Introduction to Ubiquitous Computing 파일을 구할 수 있을 것이다. 아래 파일 일부를 첨부해 놓았다.)

Ubiquitous논문일부_PDF_text.pdf
1.65MB

     - 폴더 아이콘을 이용하여 PDF파일을 선택한다.
     - 속성창에서 PDF 파일 선택후 Range를 “3”으로 하면 3페이지가 선택됨(PDF파일의 장수를 확인하고 입력)
     - 출력의 텍스트에 Ctrl + k를 눌러 변수 설정(그냥 pdf1로)한다. 

 4) Step 3. Write Text File 액티비티 사용하기

     - 텍스트에는 윗부분에서 지정한 출력변수 pdf1을 선택
     - 폴더 모양 아이콘을 눌러 출력할 txt파일의 이름(예를 들어, pdf1.txt)을 입력한다.

 

5) 실행

     - 2페이지를 생성하도록 했을 경우 생성된 pdf1.txt파일을 열어보면 다음과 같은 실행결과를 얻을 수 있다.



Scannded image PDF 읽기

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

 2) Microsoft OCR 사용하기
     - Read PDF With OCR 액티비티를 가져다 놓는다.

     - 실습할 파일은 아래쪽에 첨부해 놓았다.

Ubiquitous논문일부_PDF_image.pdf
2.08MB

     - PDF 파일 선택후 Range를 “2”으로 하면 2페이지가 선택되는 것임

     - 출력의 텍스트에 Ctrl + k를 눌러 변수 설정(그냥 pdf2로)한다. 
     - OCR을 검색하여 Tesseract OCR을 “여기에 OCR엔진 액티비티 놓기”에 놓는다.
     - 입력의 Image에 에러가 발생하면 Image 글자를 지운 후 다시 동일하게 Image라고 입력한다. 

    - 참고) 한글 PDF인 경우 https://tesseract-ocr.github.io/tessdoc/Data-Files에서 kor.traineddata를 다운로드 받아 Uipath Studio가 설치된 위치에 tessdata라는 폴더를 만들고 넣어두어야 한다고 몇몇 사이트에서 설명하고 있으나 동작하지 않으니 추후 확인 후 보완하도록 하겠다..


 3) Write Text File 사용하기
     - 윗부분의 출력변수 pdf2을 선택
     - 폴더 모양 아이콘을 눌러 출력할 txt파일의 이름을 입력한다.

 

4) 실행

     - 위와 약같 차이는 나지만 생성된 pdf2.txt파일을 열어보면 다음과 같은 실행결과를 얻을 수 있다.

'RPA > UiPath 강좌' 카테고리의 다른 글

[UiPath-009] e메일 발송하기  (0) 2023.04.09
[UiPath-008] 제어문(조건문, 반복문)  (0) 2023.04.02
[UiPath-006] 시청률 가져오기  (0) 2023.04.01
[UiPath-005] 네이버 검색 및 저장하기  (0) 2023.03.29
[UiPath-004] 변수  (0) 2023.03.29

댓글