PyMuPDF

 
 

PDF 메타데이터를 관리하기 위한 오픈 소스 Python 라이브러리

PDF 문서의 메타데이터에 접근하고 수정할 수 있는 무료 오픈 소스 Python 라이브러리인 PyMuPDF를 사용해 보세요.

PyMuPDF란 무엇인가요?

PyMuPDF는 Fitz라고도 불리며, PDF 구문 분석, PDF 분할 및 병합 등과 같은 많은 기능을 제공하는 오픈 소스 Python 라이브러리입니다. 하지만 이 페이지에서는 Python 개발자가 PyMuPDF 라이브러리를 사용하여 다음과 같은 PDF 메타데이터 관련 작업을 처리하는 방법에 대해서만 설명합니다.

  • PDF 메타데이터 읽기: PyMuPDF는 작성자, 제목, 주제, 생성 날짜 등의 정보가 포함된 PDF 문서의 메타데이터에 액세스하는 것을 지원합니다.
  • PDF 메타데이터 수정: 라이브러리에서는 PDF 문서의 메타데이터를 수정할 수도 있습니다.
  • XML 메타데이터 읽기: PDF 문서에는 작성자, 제목 등과 같은 표준 문서 속성에 국한되지 않는 XML 메타데이터도 포함되어 있으며 추가 메타데이터를 가질 수 있습니다. PyMuPDF를 사용하면 개발자도 읽을 수 있습니다.
  • XML 메타데이터 변경: 개발자는 PyMuPDF 라이브러리를 사용하여 PDF의 XML 메타데이터를 변경할 수도 있습니다.
GitHub

GitHub 통계

이름:
언어:
별:
포크:
특허:
저장소가 마지막으로 업데이트된 시간:

PyMuPDF 시작하기

PyMuPDF를 설치하고 사용하려면 Python 버전 3.8.0 이상이 필요합니다. 따라서 먼저 Python을 설치한 다음 아래 명령을 사용하여 pip가상 환경을 사용하여 컴퓨터에 PyMuPDF를 설치합니다.

리눅스


python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf

맥OS


python -m venv pymupdf-venv
. pymupdf-venv/bin/activate
pip install pymupdf

윈도우


python -m venv pymupdf-venv
.\pymupdf-venv\Scripts\activate
pip install pymupdf  

PDF 메타데이터 읽기

PyMuPDF 라이브러리의 metadata 멤버를 사용하여 PDF의 메타데이터를 읽을 수 있습니다. 이 라이브러리에는 문서의 전체 메타데이터 내용이 들어 있습니다. 아래 코드 조각은 metadata 멤버에서 PDF의 메타데이터를 가져오는 방법을 보여줍니다.

산출

아래 스크린샷은 PyMuPDF를 사용하여 PDF에서 검색된 메타데이터를 보여줍니다.

PDF 메타데이터 편집

아래 코드 조각과 같이 변경하려는 필드와 해당 새 값이 포함된 사전을 set_metadata 메서드에 전달하여 PyMuPDF 라이브러리를 사용하여 PDF의 메타데이터를 편집할 수 있습니다.

PDF의 XML 메타데이터 읽기

PyMuPDF 라이브러리를 사용하여 PDF의 XML 메타데이터를 검색할 수 있습니다. 아래 코드 조각에 표시된 것처럼 전체 XML 메타데이터를 반환하는 get_xml_metadata 메서드를 사용합니다.

산출

아래 스크린샷은 PyMuPDF를 사용하여 PDF에서 검색된 XML 메타데이터를 보여줍니다.

PDF의 XML 메타데이터 변경

PyMuPDF 라이브러리의 set_xml_metadata 메서드를 사용하여 PDF의 XML 메타데이터를 설정하거나 변경할 수 있습니다. 문서 수준 메타데이터를 대체하는 것만큼 간단하지 않습니다. set_xml_metadata는 모든 문자열을 허용하고 전체 XML 메타데이터를 전달된 문자열로 대체하기 때문입니다.

의도치 않게 메타데이터 정보를 삭제하는 것을 방지하기 위해 먼저 get_xml_metadata를 사용하여 전체 XML 메타데이터를 문자열로 가져온 다음 문자열의 replace 메서드를 사용하여 원하는 정보를 바꿉니다. 마지막으로 변경된 필드가 있는 전체 XML을 set_xml_metadata 메서드에 전달하여 PDF의 전체 XML 메타데이터를 변경합니다. 자세한 내용은 아래 코드 조각을 확인하세요.

결론

요약하자면, PyMuPDF는 메타데이터 조작과 관련된 작업에 훌륭한 도구입니다. PDF의 메타데이터 정보를 쉽게 검색하고 변경할 수 있습니다. 그러나 주목할 만한 약점은 set_xml_metadata 메서드에 있습니다. 이 메서드는 전달된 모든 문자열을 받아들이고 이전 XML을 덮어쓰기 때문에 의도치 않게 정보가 손실될 수 있습니다. 이 문제를 피하기 위해 개발자는 XML 메타데이터에서 올바른 수정을 보장하기 위한 논리를 구현해야 합니다.

유사한 제품

 한국인