栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

使用pdfminer从pdf提取文本可得到多个副本

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用pdfminer从pdf提取文本可得到多个副本

我的回答在您所引用的线程中有点不正确。我发现了错误,却忘记了更新答案。

因为pdfminer的文档非常稀疏,所以我无法完全解释为什么这样做会起作用。希望了解pdfminer库的人能对我们有所帮助。

我所知道的是,您必须

text = retstr.getvalue()
在for循环之外进行操作。我只能假定
retstr
正在像
final_text+= text
在for循环中那样进行更新,因此一旦完成,我们只需
text = retstr.getvalue()
要从所有页面中获取文本即可。

from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreterfrom pdfminer.converter import TextConverterfrom pdfminer.layout import LAParamsfrom pdfminer.pdfpage import PDFPagefrom cStringIO import StringIOdef convert_pdf_to_txt(path):    rsrcmgr = PDFResourceManager()    retstr = StringIO()    prec = 'utf-8'    laparams = LAParams()    device = TextConverter(rsrcmgr, retstr, prec=prec, laparams=laparams)    fp = file(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 textprint convert_pdf_to_txt("test.pdf")

希望这对您有所帮助!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/669502.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号