【问题标题】:Python: Error - tabula-py cannot read PDFPython:错误 - tabula-py 无法读取 PDF
【发布时间】:2017-05-16 15:31:07
【问题描述】:

我无法执行 tabula-py 的 read_pdf 函数。

它似乎正在产生以下错误消息:

WindowsError: [Error 2] The system cannot find the file specified

带回溯:

Traceback (most recent call last):
  File "C:/Users/riley/PycharmProjects/Payroll/PayrollParsePDF.py", line 126, in <module>
    print read_pdf(r"C:\Users\riley\Desktop\Bank Statements\53591.pdf")
  File "C:\Python27\lib\site-packages\tabula\wrapper.py", line 54, in read_pdf_table
    output = subprocess.check_output(args)
  File "C:\Python27\lib\subprocess.py", line 212, in check_output
    process = Popen(stdout=PIPE, *popenargs, **kwargs)
  File "C:\Python27\lib\subprocess.py", line 390, in __init__
    errread, errwrite)
  File "C:\Python27\lib\subprocess.py", line 640, in _execute_child
    startupinfo)

关于为什么会这样的任何见解?之前还不错。

【问题讨论】:

  • 该文件应该在您的 Windows 桌面上,对吧?告诉我,您已进入桌面并确认该文件夹存在,并且当您打开该文件夹时,您可以看到该文件,并且您可以双击打开它。
  • 是的,文件在那里,目录是正确的

标签: python pdf text tabula


【解决方案1】:

不是您的文件没有找到,而是java 的可执行文件没有找到。 tabula\wrapper.py 中的那一行试图启动用 Java 编写的实际 Tabula 代码,但失败了。

我不知道为什么 Java 会突然停止被发现 - 也许是什么东西弄乱了你的 PATH?

【讨论】:

  • 我相信是的。它在我的 PATH 系统变量中,当我从 cmd 窗口运行 java 时,它执行得很好。从 Pycharm 上的脚本运行时,它似乎不起作用。
  • 我不熟悉 Pycharm - 在其中尝试 import os; print os.environ['PATH'] 看看它认为你的 PATH 是什么。
  • 根据 Pycharm,看起来 Java 在 PATH 中...C:\Program Files (x86)\Java\jdk1.8.0_111\bin;C:\Program Files\Java\jre7\bin
  • 嗯,这与我计算机上的 Java PATH 条目有很大不同,但看起来它应该可以工作。您可以在 Pycharm 中尝试import subprocess; subprocess.call("java") - 它以几乎与 Tabula 尝试相同的方式启动 Java,并且应该产生一堆文本(但没有错误)。您也可以在命令提示符下(Python 之外)尝试path,看看那里是否有针对 Java 列出的不同内容。
  • 我收到一条新的错误消息....错误:无法创建文件 C:\data\csv\fac6292f-35b1-4ad4-8b04-f8b72e362e7d.csv
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-10
相关资源
最近更新 更多