PDF को टेक्स्ट में बदलने के लिए आप PDFMiner पैकेज का उपयोग कर सकते हैं।
उदाहरण
आप इसे निम्न प्रकार से उपयोग कर सकते हैं:
import sys
from cStringIO import StringIO
from pdfminer.pdfpage importPDFPage
from pdfminer.pdfinterp importPDFResourceManager, PDFPageInterpreter
from pdfminer.layout importLAParams
from pdfminer.converter importXMLConverter, HTMLConverter, TextConverter
def pdfparser(data):
fp = file(data, 'rb')
resource_manager = PDFResourceManager()
retstr = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(resource_manager,retstr, codec=codec, laparams=laparams)
interpreter =PDFPageInterpreter(resource_manager, device)
# Process each page contained in thedocument.
for page in PDFPage.get_pages(fp):
interpreter.process_page(page)
data = retstr.getvalue()
print data
pdfparser('filename.pdf') यह एक पीडीएफ फाइल लेता है और पीडीएफपेजइंटरप्रेटर क्लास से प्रोसेस_पेज फ़ंक्शन का उपयोग करके पेज से पेज से टेक्स्ट निकालता है।
टेक्स्ट निकालने के लिए उपयोग करने के लिए बहुत आसान एपीआई के साथ PDFMiner का एक विकल्प है। पीपीडीएफ ठीक काम करता है (यह मानते हुए कि आप अच्छी तरह से गठित पीडीएफ के साथ काम कर रहे हैं)। यदि आप केवल टेक्स्ट (रिक्त स्थान के साथ) चाहते हैं, तो आप निम्न कार्य कर सकते हैं:
import pyPdf
pdf = pyPdf.PdfFileReader(open('filename.pdf',"rb"))
for page in pdf.pages:
print page.extractText()