Библиотека за анализатор на PDF на Python с отворен код
Изпробвайте тази безплатна библиотека с отворен код на Python, за да анализирате, четете и извличате текст, изображения, таблици и друго съдържание от PDF документи.
Какво е PyMuPDF?
PyMuPDF, известен също като Fitz, е библиотека на Python с отворен код, която предоставя изчерпателен набор от инструменти за работа с PDF файлове. С PyMuPDF потребителите могат ефективно да изпълняват задачи като отваряне на PDF файлове, извличане на текст, изображения и таблици, манипулиране на свойствата на страницата като завъртане и изрязване, създаване на нови PDF документи и конвертиране на PDF страници в изображения.
PyMuPDF поддържа няколко функции, които са изброени по-долу:
- Четене на PDF документи: PyMuPDF може да отваря и чете PDF документи, което ви позволява достъп до текста, изображенията и другото съдържание в тях.
- Извличане на текст: Можете да извличате текст от PDF документи, включително текстово съдържание, шрифтове и информация за оформлението.
- Извличане на изображения: Можете да извличате изображения от PDF документи в различни формати, като JPEG или PNG.
- Извличане на таблици: Можете също така да извличате таблици от PDF документи.
В този преглед основният ни фокус ще бъде върху функциите за извличане и анализиране на библиотеката. За задълбочена оценка на функциите за разделяне, сливане и управление на страници, моля, щракнете тук.
Първи стъпки с PyMuPDF
Имате нужда от Python версия 3.8.0 или по-нова, за да инсталирате и използвате PyMuPDF. И така, първо инсталирайте 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
Windows
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 е професионален инструмент с някои ясни силни и слаби страни. Страхотен е за задачи като OCR и извличане на текст, което го прави ценен за работа с текст в PDF файлове.
Въпреки това не е толкова добър при извличане на таблици от PDF файлове, особено когато PDF файловете имат сложна структура или повече страници, което може да е недостатък за някои потребители. Освен това може да изисква допълнителни библиотеки като Pandas и Tesseract OCR езикови файлове с данни в определени ситуации, което усложнява използването му. Въпреки тези ограничения, PyMuPDF остава стабилен избор за работа с текст в PDF файлове.