Python中有哪些模块可用于将PDF转换为文本?

Python中有哪些模块可用于将PDF转换为文本?

您可以使用PDFMiner包来将PDF转换为文本。

更多Python相关文章,请阅读:Python 教程

例子

您可以按以下方式使用它:

import sys
from cStringIO import StringIO
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.layout import LAParams
from pdfminer.converter import XMLConverter, 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)
 
    # 处理文档中包含的每个页面。
    for page in PDFPage.get_pages(fp):
        interpreter.process_page(page)
        data = retstr.getvalue()
    print data
 pdfparser('filename.pdf')

这会获取PDF文件并使用PDFPageInterpreter类中的process_page函数逐页提取文本。

与PDFMiner相比,有一种更易于使用的API可用于提取文本。如果您正在使用格式良好的PDF,pyPDF运作良好。如果您只想要文本(带空格),您可以执行以下操作:

import pyPdf
pdf = pyPdf.PdfFileReader(open('filename.pdf',"rb"))
for page in pdf.pages:
    print page.extractText()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程