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

Вам понадобится Python версии 3.8.0 или выше для установки и использования PyMuPDF. Поэтому сначала установите Python, а затем используйте команды ниже для установки PyMuPDF на свой компьютер с помощью pip и виртуальной среды.

линукс


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.

Похожие Продукты

 Русский