Python библиотека за преобразуване на PDF в HTML/XML
Безплатна библиотека на Python с отворен код за конвертиране на PDF документи в HTML и XML.
Какво е pdfminer.six?
pdfminer.six е безплатна библиотека на Python с отворен код, която може да се използва за конвертиране на PDF документи в други формати.
Ето кратък списък на неговите основни функции за конвертиране на PDF:
- Преобразуване на PDF в HTML: Преобразувайте PDF документи в HTML формат, като запазвате структурата и оформлението на документа.
- Преобразуване на PDF в XML: Преобразувайте PDF файловете в XML формат, като уловите всички детайли, включително шрифтове и други елементи.
Първи стъпки с pdfminer.six
Имате нужда от Python версия 3.6.0 или по-нова, за да инсталирате и използвате pypdf. И така, първо инсталирайте Python и след това използвайте командите по-долу, за да инсталирате pypdf на вашата машина, като използвате pip и виртуална среда.
Linux
python3 -m venv venv
source venv/bin/activate
pip install pdfminer.six
MacOS
python -m venv venv
source venv/bin/activate
pip install pdfminer.six
Windows
python3 -m venv venv
venv\Scripts\activate.bat
pip install pdfminer.six
Конвертирайте PDF в HTML
Можем да конвертираме PDF документ в HTML формат, като използваме функцията extract_text_to_fp на библиотеката pdfminer.six (с изходен тип, зададен на html), предоставена от библиотеката, както е показано в кодовия фрагмент по-долу:
Изход
Следната екранна снимка показва HTML файла, генериран чрез конвертиране на PDF документа:
Конвертиране на PDF в XML
Можем също така да конвертираме PDF документ в XML формат, като използваме същата функция extract_text_to_fp (но с изходен тип, зададен на xml), предоставена от библиотеката, както е показано в кодовия фрагмент по-долу:
Изход
Следната екранна снимка показва XML съдържанието, преобразувано от PDF документа:
Заключение
Като цяло pdfminer.six поддържа конвертиране на PDF документи в XML формат без никакви проблеми, но когато се опитва да конвертира PDF в HTML, успява да прехвърли текстовото съдържание, но често нарушава цялостното оформление.