Install & Compatibility
Where this runs
tested against v20151206 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslpy 3.10–3.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 19.1MB
glibcpy 3.10–3.95 runs
installs and imports cleanly · install 1.7s · import 0.000s · 20MB
17MB installed
● package 17MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
PDFParser
✓ from pdfminer.pdfparser import PDFParser
✗ from pdfminer.pdfparser import PDFParser
PDFDocument
✓ from pdfminer.pdfdocument import PDFDocument
PDFPageInterpreter
✓ from pdfminer.pdfinterp import PDFPageInterpreter
Extract text from a PDF file using pdfminer2.
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from io import StringIO
# Open PDF file
with open('sample.pdf', 'rb') as fh:
parser = PDFParser(fh)
doc = PDFDocument(parser)
rsrcmgr = PDFResourceManager()
retstr = StringIO()
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, laparams=laparams)
interpreter = PDFPageInterpreter(rsrcmgr, device)
for page in PDFPage.create_pages(doc):
interpreter.process_page(page)
text = retstr.getvalue()
device.close()
retstr.close()
print(text)
Upgrade
Version history
20151206latest on PyPI · released Dec 5, 2015
Audit
Dependencies
pycryptodomeoptionalPDF encryption support