[python] PyPDF2와 PyMuPDF 라이브러리 사용 예시

PDF는 다양한 정보를 포함하는 중요한 문서 형식입니다. Python에서는 PyPDF2와 PyMuPDF 라이브러리를 사용하여 PDF 파일을 읽고 처리할 수 있습니다. 이번 예시에서는 이러한 두 라이브러리를 사용하는 방법에 대해 알아보겠습니다.

PyPDF2 라이브러리 예시

PyPDF2는 Python에서 PDF 파일을 조작하기 위한 간단하고 유용한 도구입니다. 아래는 PyPDF2를 사용하여 PDF 파일에서 텍스트를 추출하는 예시 코드입니다.

import PyPDF2

def extract_text_from_pdf(file_path):
    with open(file_path, 'rb') as f:
        reader = PyPDF2.PdfReader(f)
        text = ""
        for page in reader.pages:
            text += page.extract_text()
    return text

pdf_file = "example.pdf"
text = extract_text_from_pdf(pdf_file)
print(text)

위의 예시 코드에서는 PyPDF2 패키지를 import하고, extract_text_from_pdf 함수를 정의합니다. 이 함수는 주어진 PDF 파일에서 텍스트를 추출하는 역할을 합니다. PdfReader를 사용하여 PDF 파일을 열고, pages 객체를 통해 페이지에 접근하여 텍스트를 추출합니다. 추출한 텍스트는 변수 text에 저장되며, 이를 출력합니다.

PyMuPDF 라이브러리 예시

PyMuPDF는 Python에서 PDF 파일을 렌더링하고 조작할 수 있는 강력한 라이브러리입니다. 아래는 PyMuPDF를 사용하여 PDF 파일을 이미지 파일로 변환하는 예시 코드입니다.

import fitz

def convert_pdf_to_images(file_path):
    pdf_doc = fitz.open(file_path)
    for i in range(len(pdf_doc)):
        page = pdf_doc.load_page(i)
        pix = page.get_pixmap(alpha=False)
        pix.save(f"page_{i+1}.png")

pdf_file = "example.pdf"
convert_pdf_to_images(pdf_file)

위의 예시 코드에서는 fitz 모듈을 import하고, convert_pdf_to_images 함수를 정의합니다. 이 함수는 주어진 PDF 파일을 이미지 파일로 변환합니다. fitz.open을 사용하여 PDF 파일을 열고, load_page를 사용하여 페이지를 로드한 후, get_pixmap을 사용하여 이미지로 변환합니다. 변환된 이미지는 “page_1.png”, “page_2.png”, …와 같은 이름으로 저장됩니다.

PyPDF2와 PyMuPDF 라이브러리를 사용하면 Python에서 PDF 파일을 쉽게 읽고 처리할 수 있습니다. 이러한 라이브러리를 활용하여 다양한 작업을 수행할 수 있으니, 필요에 따라 적절하게 활용해보시기 바랍니다.

참고 문서: