Бібліотека Python PDF Parser з відкритим кодом
Спробуйте цю безкоштовну та відкриту бібліотеку Source Python, щоб аналізувати, читати та видобувати текст, зображення, таблиці й інший вміст із документів PDF.
Що таке PyMuPDF?
PyMuPDF, також відомий як Fitz, — це бібліотека Python з відкритим вихідним кодом, яка надає повний набір інструментів для роботи з файлами PDF. За допомогою PyMuPDF користувачі можуть ефективно виконувати такі завдання, як відкриття PDF-файлів, вилучення тексту, зображень і таблиць, керування властивостями сторінки, як-от обертання та обрізання, створення нових PDF-документів і перетворення PDF-сторінок на зображення.
PyMuPDF підтримує декілька функцій, перелічених нижче:
- Читання PDF-документів: PyMuPDF може відкривати та читати PDF-документи, надаючи вам доступ до тексту, зображень та іншого вмісту в них.
- Вилучення тексту: ви можете видобувати текст із PDF-документів, зокрема текстовий вміст, шрифти та інформацію про макет.
- Вилучення зображень: можна видобувати зображення з документів PDF у різних форматах, як-от JPEG або PNG.
- Вилучення таблиці: ви також можете видобувати таблиці з документів PDF.
У цьому огляді наша основна увага буде зосереджена на функціях вилучення та аналізу бібліотеки. Щоб отримати поглиблену оцінку функцій розділення, об’єднання та керування сторінками, натисніть тут.
Початок роботи з 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
Ви можете використовувати бібліотеку PyMuPDF у Python для отримання тексту з PDF-документа та аналізу тексту, наприклад підрахунку слів, просто використовуючи функції, надані в бібліотеці, як показано в коді нижче:
На зображенні нижче показано витягнутий текст і кількість слів у файлі PDF:
Витягувати зображення з PDF
Ми можемо використовувати бібліотеку PyMuPDF для отримання зображень із PDF-документа на Python. Наведений нижче фрагмент коду відкриває вказаний PDF-файл, витягує зображення з PDF-файлу та зберігає їх у поточному робочому каталозі:
Нижче наведено зображення PNG, витягнуте з PDF-документа
Витягти таблиці з PDF
Ми також можемо використовувати бібліотеку PyMuPDF для обробки документа PDF і вилучення з нього таблиць. Перегляньте наведений нижче фрагмент коду, який відкриває вказаний PDF-файл і витягує таблиці з PDF-документа:
На знімку екрана нижче показано таблицю, витягнуту з документа PDF:
Вставити текст у PDF
Наведений нижче фрагмент коду Python демонструє використання бібліотеки PyMuPDF для вставки тексту у файл PDF і збереження зміненого PDF як text.pdf:
Текст, вставлений за допомогою наведеного вище коду, виділено в червоному полі нижче:
Розпізнавання тексту PDF за допомогою OCR з PyMuPDF
We will perform OCR on the PDF file containing the following image:На зображенні нижче показано текст, витягнутий із зображення в наданому файлі PDF:
Висновок
Таким чином, PyMuPDF є професійним інструментом з певними сильними та слабкими сторонами. Він чудово підходить для таких завдань, як оптичне розпізнавання тексту та вилучення тексту, що робить його цінним для роботи з текстом у PDF-файлах.
Однак це не дуже добре для видобування таблиць із PDF-файлів, особливо якщо PDF-файли мають складну структуру або більшу кількість сторінок, що може бути недоліком для деяких користувачів. Крім того, у певних ситуаціях можуть знадобитися додаткові бібліотеки, такі як Pandas і Tesseract OCR файли мовних даних, що ускладнює його використання. Незважаючи на ці обмеження, PyMuPDF залишається надійним вибором для роботи з текстом у PDF-файлах.