[python] PDF 파일에서 텍스트 유형 복사하기

PDF 파일에서 텍스트를 추출하고 이를 텍스트 유형으로 복사하는 것은 자주 사용되는 작업입니다. 이 문서에서는 Python을 사용하여 PDF 파일에서 텍스트를 추출하고 클립보드에 텍스트를 복사하는 방법을 알아보겠습니다.

필요한 도구 설치하기

먼저 필요한 패키지를 설치해야 합니다. pdfminer.six 패키지를 사용하여 PDF에서 텍스트를 추출할 것이므로, 아래의 명령어를 사용하여 패키지를 설치합니다.

pip install pdfminer.six

코드 예제

이제 코드를 작성하여 PDF 파일에서 텍스트를 추출하고 텍스트 유형으로 복사해보겠습니다.

import pdfminer
import pyperclip

from pdfminer.converter import TextConverter
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.pdfpage import PDFPage

def extract_text_from_pdf(file_path):
    resource_manager = PDFResourceManager()
    fake_file_handle = io.StringIO()
    converter = TextConverter(resource_manager, fake_file_handle)
    page_interpreter = PDFPageInterpreter(resource_manager, converter)

    with open(file_path, 'rb') as file:
        for page in PDFPage.get_pages(file, caching=True, check_extractable=True):
            page_interpreter.process_page(page)

        text = fake_file_handle.getvalue()

    converter.close()
    fake_file_handle.close()

    return text

def copy_text_to_clipboard(text):
    pyperclip.copy(text)

# PDF 파일 경로를 지정합니다.
pdf_file = 'example.pdf'

# PDF 파일에서 텍스트 추출하기
text = extract_text_from_pdf(pdf_file)

# 추출한 텍스트를 클립보드에 복사하기
copy_text_to_clipboard(text)

코드 설명

위의 코드 예제에서는 pdfminer.six 패키지를 사용하여 PDF 파일에서 텍스트를 추출하고, pyperclip 패키지를 사용하여 텍스트를 클립보드에 복사하는 작업을 수행합니다.

  1. extract_text_from_pdf(file_path): 입력된 PDF 파일에서 텍스트를 추출하는 함수입니다. pdfminer.six 라이브러리의 PDFResourceManager, TextConverter, PDFPageInterpreter, PDFPage 등을 사용하여 PDF 파일을 읽고 텍스트를 추출합니다.
  2. copy_text_to_clipboard(text): 입력된 텍스트를 클립보드에 복사하는 함수입니다. pyperclip 라이브러리를 사용하여 텍스트를 클립보드에 복사합니다.
  3. pdf_file: 추출할 텍스트를 포함하고 있는 PDF 파일의 경로입니다.
  4. text: 추출된 텍스트가 저장되는 변수입니다.

결론

Python을 사용하여 PDF 파일에서 텍스트를 추출하고 이를 텍스트 유형으로 복사하는 것은 간단한 작업입니다. pdfminer.sixpyperclip 패키지를 사용하면 편리하게 작업을 수행할 수 있습니다. 이를 활용하여 필요한 작업에 자유롭게 사용해보세요.

참고 자료