ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Python pdftotext ShellError使用textract

2019-07-02 22:55:55  阅读:363  来源: 互联网

标签:python pdf text-extraction


当我在包含PDF文件的目录上运行以下Python脚本时,我不断收到此错误:

ShellError: The command pdftotext "path/to/pdf/title.pdf" - failed with exit code 1
————- stdout ————-
————- stderr ————-
‘pdftotext’ is not recognized as an internal or external command,
operable program or batch file.

我已经验证pdf2text和PDFMiner已正确安装.这是我第一次使用textract,它适用于所有其他文件类型(Word文档,PowerPoint文档,Excel文档等).当pdf2text是实际库时,为什么进程调用pdftotext?

import os
import os.path
import textract

pdf_path = 'path/to/pdf/'

for fname in os.listdir(pdf_path):
    if os.path.isfile(pdf_path+fname ):
        f = textract.process(pdf_path+fname )
        if 'string' in f:
            print fname

谢谢!

解决方法:

我自己完成了这个问题.据我所知,令人困惑的是pdftotext是一个在linux中很流行的命令实用程序,而pdf2text是PDFMiner包的包装器.我的poppler和pdftotext的windows二进制文件来自archive.org链接,所以我觉得这里没有正确的链接,但here’s a link我在维基百科页面上找到了一个windows二进制文件.从我的能力来看,pdftotext往往比pdfMiner提供更好的输出.我遇到的问题是产生了同样的错误,你收到的是pdftotext.exe已安装,并且在我的路径中,但如果我没有通过cmdline启动python脚本,我会收到错误.

如果你最终下载它,它附带一些其他很好的实用程序,如pdftohtml和pdftops.个人最喜欢的是pdftotext -layout whatever.txt,它将pdf打印到stdout作为明文,一切就绪.

tl; dr尝试运行打开cmdline并运行程序.如果您仍然可以尝试(1)安装Windows二进制文件(假设您在Windows上)或(2)尝试更新textract

pip install textract --upgrade

希望这有帮助!

标签:python,pdf,text-extraction
来源: https://codeday.me/bug/20190702/1360777.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有