PyMuPDF

 
 

Бібліотека Python з відкритим кодом для керування метаданими PDF

Спробуйте PyMuPDF, безкоштовну бібліотеку Python із відкритим вихідним кодом, щоб отримати доступ до метаданих PDF-документів і змінити їх.

Що таке PyMuPDF?

PyMuPDF, також відомий як Fitz, — це бібліотека Python з відкритим кодом, яка пропонує багато функцій, як-от розбір PDF-файлів, розділення та об’єднання PDF-файлів тощо, але на цій сторінці ми обговоримо лише те, як розробники Python можуть використовувати бібліотеку PyMuPDF для виконання завдань, пов’язаних із метаданими PDF, наприклад:

  • Читання метаданих PDF: PyMuPDF підтримує доступ до метаданих документів PDF, які містять таку інформацію, як автор, назва, тема, дата створення тощо.
  • Змінити метадані PDF: бібліотека також дозволяє змінювати метадані PDF-документів.
  • Читання метаданих XML: документи PDF також містять метадані XML, які не обмежуються стандартними властивостями документа, як-от автор, назва тощо, і можуть мати додаткові метадані. За допомогою PyMuPDF розробники також можуть читати його.
  • Зміна метаданих XML: розробники також можуть змінювати метадані XML PDF-файлів за допомогою бібліотеки PyMuPDF.
GitHub

Статистика GitHub

Ім'я:
Мова:
зірки:
Вилки:
Ліцензія:
Репозиторій востаннє оновлено о

Початок роботи з PyMuPDF

Щоб установити та використовувати PyMuPDF, вам потрібна версія Python 3.8.0 або новіша. Отже, спочатку встановіть Python, а потім скористайтеся наведеними нижче командами, щоб установити PyMuPDF на ваш комп’ютер за допомогою pip і віртуальне середовище.

Linux


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

MacOS


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

Ми можемо читати метадані PDF-файлу за допомогою члена metadata бібліотеки PyMuPDF, який містить повний вміст метаданих документа. Наведений нижче фрагмент коду показує, як отримати метадані PDF від учасника metadata:

На знімку екрана нижче показано метадані, отримані з PDF-файлу за допомогою PyMuPDF:

Редагувати метадані PDF

Ми можемо редагувати метадані PDF-файлів за допомогою бібліотеки PyMuPDF, передавши словник, що містить поля, які ми хочемо змінити разом із їхніми новими значеннями, методу set_metadata, як показано у фрагменті коду нижче:

Читання XML-метаданих PDF-файлів

Ми можемо отримати XML-метадані PDF-файлу за допомогою бібліотеки PyMuPDF. Ми використовуємо метод get_xml_metadata, який повертає цілі метадані XML, як показано у фрагменті коду нижче:

На знімку екрана нижче показано метадані XML, отримані з PDF-файлу за допомогою PyMuPDF:

Змінити метадані XML PDF-файлів

Ми можемо встановити або змінити XML-метадані PDF-файлу за допомогою методу set_xml_metadata бібліотеки PyMuPDF. Це не так просто, як замінити метадані на рівні документа, оскільки set_xml_metadata прийме будь-який рядок і замінить повні метадані XML переданим йому рядком.

Щоб уникнути ненавмисного видалення будь-якої інформації метаданих, ми спочатку отримуємо повні метадані XML у вигляді рядка за допомогою get_xml_metadata, а потім використовуємо метод replace рядка, щоб замінити потрібний нарешті, ми передаємо повний XML зі зміненими полями до методу set_xml_metadata, який змінює всі метадані XML PDF-файлу. Подробиці дивіться у фрагменті коду нижче:

Висновок

Таким чином, PyMuPDF є чудовим інструментом для завдань, пов’язаних із маніпулюванням метаданими. Ми можемо легко отримати та змінити метадані PDF-файлів. Однак помітна слабкість полягає в методі set_xml_metadata. Цей метод приймає будь-який переданий йому рядок і перезаписує ним попередній XML, що може спричинити ненавмисну втрату інформації. Щоб уникнути цієї проблеми, розробники повинні реалізувати свою логіку, щоб забезпечити правильні зміни в метаданих XML.

Подібні Продукти

 Ukrainian