Извличане на информация от PDF файлове чрез безплатна библиотека на Python
Безплатен API на Python, който позволява на разработчиците да извличат информация от PDF документи и да конвертират PDF в други формати и извършва автоматичен анализ на оформлението.
PDFMiner е библиотека с отворен код, много лесна за използване на Python за обработка на PDF файлове без никакви други зависимости. PDFMine.six, поддържан от общността разклонение на оригиналната библиотека PDFMiner. Библиотеката предоставя много мощни функции за извличане на информация от PDF документи. Той предоставя помощна програма за команди за не-програмисти и API интерфейс за програмисти. Мощен PDF конвертор също е част от библиотеката, която помага на потребителите да трансформират PDF файлове в други текстови формати като HTML.
PDFMiner е чиста библиотека на Python, която може лесно да извлече всички текстове от PDF файл, които са изобразени програмно. Страхотната възможност е, че той също извлича съответните местоположения, имена и размери на шрифтове и посока на писане (хоризонтална или вертикална) за всеки текстов сегмент. Той поддържа PDF-1.7 спецификация и осигурява поддръжка за извличане на защитени с парола PDF документи. Библиотеката включва няколко други важни функции, като анализиране, анализиране и конвертиране на PDF документи, извличане на съдържание като HTML или hOCR, поддръжка за скриптове за вертикално писане, поддръжка на RC4 и AES криптиране, извличане на съдържание, извличане на етикетирано съдържание, автоматично оформление анализ и така нататък.
Първи стъпки с PDFMiner
PDFMiner изисква Python 3.6 и по-нова версия. Можете да инсталирате PDFMiner с помощта на pip. Моля, използвайте следната команда, за да го инсталирате.
Инсталирайте PDFMiner чрез pip
pip install pdfminer
Можете също да изтеглите компилираната споделена библиотека от хранилището на GitHub и да я инсталирате.
Извличане на текст от PDF файл чрез Python
Библиотеката Pdfminer.six с отворен код дава възможност на разработчиците на софтуер да извличат текст от PDF файл само с няколко реда код на Python. Библиотеката се фокусира върху получаването и анализирането на текстови данни и след това извлича текста от страница директно от изходния код на PDF. Библиотеката също така позволява на разработчиците да извличат изображения (JPG, JBIG2, Bitmaps) от PDF файл. Също така е възможно да се извлече името на шрифта или размера на всеки отделен знак. Следните примери показват как да извлечете текста от PDF файл и да го отпечатате на екрана.
Отваряне и манипулиране на PDF документи чрез Python
from pdfminer.high_level import extract_text
# Extract text from a pdf.
text = extract_text('example.pdf')
# Extract iterable of LTPage objects.
pages = extract_pages('example.pdf')
print(text)
Конвертирайте PDF файл в hOCR чрез API на Python
hOCR е отворен стандарт за представяне на данни за форматиран текст, получен от оптично разпознаване на символи (OCR). Безплатните библиотеки Pdfminer.six позволяват на разработчиците на софтуер да конвертират PDF файлове в hOCR формат само с няколко реда код на Python. Библиотеката е много лесна за работа и може да извлече изричната текстова информация от онези PDF файлове, които я имат, и да я използва за генериране на основно hOCR представяне.
Конвертирайте PDF файл в текст чрез Python
Библиотеката включва богат набор от функции и възможности, които ви позволяват да надхвърлите основната PDF обработка. Библиотеката Pdfminer.six с отворен код позволява на разработчиците на Python да конвертират PDF документи в текст само с няколко прости команди. Първо трябва да предоставите пътя към PDF файловете, както и към текстовия файл. Ако документът е защитен с парола, вие също трябва да предоставите неговата парола. Следният пример на код може да се използва за постигане на целта, той просто ще върне низа в PDF, като се има предвид името на файла, можете лесно да го запишете във файл.
Конвертирайте PDF файл в текстов формат чрез Python API
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
def convert_pdf_to_txt(path):
rsrcmgr = PDFResourceManager()
retstr = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
fp = open(path, 'rb')
interpreter = PDFPageInterpreter(rsrcmgr, device)
password = ""
maxpages = 0
caching = True
pagenos=set()
for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):
interpreter.process_page(page)
text = retstr.getvalue()
fp.close()
device.close()
retstr.close()
return text