Ištraukite informaciją iš PDF failų naudodami nemokamą Python biblioteką
Nemokama Python API, leidžianti kūrėjams išgauti informaciją iš PDF dokumentų ir konvertuoti PDF į kitus formatus bei atlieka automatinę išdėstymo analizę.
PDFMiner yra atvirojo kodo, labai paprasta naudoti Python biblioteka, skirta PDF failams apdoroti be jokių kitų priklausomybių. PDFMine.six bendruomenės palaikoma originalios PDFMiner bibliotekos šakutė. Biblioteka suteikė labai galingas informacijos iš PDF dokumentų ištraukimo funkcijas. Tai suteikia komandų įrankį neprogramuotojams ir API sąsają programuotojams. Galingas PDF keitiklis taip pat yra bibliotekos dalis, kuri padeda vartotojams konvertuoti PDF failus į kitus teksto formatus, pvz., HTML.
PDFMiner yra gryna Python biblioteka, kuri gali lengvai ištraukti visus tekstus iš PDF failo, kurie pateikiami programiškai. Puiki galimybė yra ta, kad ji taip pat išskiria atitinkamas kiekvieno teksto segmento vietas, šriftų pavadinimus ir dydžius bei rašymo kryptį (horizontalią arba vertikalią). Jis palaiko PDF-1.7 specifikaciją ir palaiko slaptažodžiu apsaugotą PDF dokumentų ištraukimą. Bibliotekoje yra keletas kitų svarbių funkcijų, tokių kaip PDF dokumentų analizavimas, analizavimas ir konvertavimas, turinio ištraukimas kaip HTML arba hOCR, vertikalių rašymo scenarijų palaikymas, RC4 ir AES šifravimo palaikymas, turinio ištraukimas, pažymėto turinio ištraukimas, automatinis išdėstymas. analizė ir pan.
Darbo su PDFMiner pradžia
PDFMiner reikia Python 3.6 ir naujesnės versijos. PDFMiner galite įdiegti naudodami pip. Norėdami ją įdiegti, naudokite šią komandą.
Įdiekite PDFMiner per pip
pip install pdfminer
Taip pat galite atsisiųsti sudarytą bendrinamą biblioteką iš „GitHub“ saugyklos ir ją įdiegti.
Ištraukite tekstą iš PDF failo naudodami Python
Atvirojo kodo Pdfminer.six biblioteka programinės įrangos kūrėjams suteikia galimybę ištraukti tekstą iš PDF failo naudojant tik kelias Python kodo eilutes. Biblioteka daugiausia dėmesio skiria tekstinių duomenų gavimui ir analizei, o po to ištraukia tekstą iš puslapio tiesiai iš PDF šaltinio kodo. Biblioteka taip pat leidžia kūrėjams iš PDF failo išgauti vaizdus (JPG, JBIG2, Bitmaps). Taip pat galima išgauti kiekvieno atskiro simbolio šrifto pavadinimą arba dydį. Toliau pateikti pavyzdžiai rodo, kaip iš PDF failo ištraukti tekstą ir išspausdinti jį ekrane.
Atidarykite ir manipuliuokite PDF dokumentais naudodami 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)
Konvertuokite PDF failą į hOCR naudodami Python API
hOCR yra atviras duomenų atvaizdavimo standartas formatuotam tekstui, gautam naudojant optinį simbolių atpažinimą (OCR). Nemokamos Pdfminer.six bibliotekos leidžia programinės įrangos kūrėjams konvertuoti PDF failus į hOCR formatą naudojant tik kelias Python kodo eilutes. Biblioteka yra labai paprasta valdyti ir gali išgauti aiškią teksto informaciją iš tų PDF failų, kuriuose ji yra, ir naudoti ją pagrindiniam hOCR vaizdui sukurti.
Konvertuokite PDF failą į tekstą naudodami Python
Bibliotekoje yra gausus funkcijų rinkinys ir galimybės, leidžiančios išplėsti pagrindinį PDF apdorojimą. Atvirojo kodo Pdfminer.six biblioteka leis Python kūrėjams konvertuoti PDF dokumentus į tekstą naudodami tik keletą paprastų komandų. Pirmiausia turite nurodyti kelią į PDF failus ir tekstinį failą. Jei dokumentas apsaugotas slaptažodžiu, taip pat turite pateikti jo slaptažodį. Šis kodo pavyzdys gali būti naudojamas tikslui pasiekti, jis tiesiog grąžins eilutę PDF rinkmenoje, atsižvelgiant į jos failo pavadinimą, galite lengvai ją išsaugoti faile.
Konvertuokite PDF failą į teksto formatą naudodami 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