在python上使用Tabula时,我不断收到此错误。
我也遇到了与此以及博客相关的每个stackoverflow问题。
我的JDK JRE是最新的。
java版本“ 1.8.0_161” Java(TM)SE运行时环境(内部版本1.8.0_161-b12) Java HotSpot(TM)64位服务器VM(内部版本25.161-b12,混合模式)
我的路径在环境变量中正确定义。
在Anaconda上运行的Python版本。
Python 3.6.5 | Anaconda,Inc
df = tabula.read_pdf("C:\XXXXX\PDFExtractor\Test.pdf")
我也尝试过编码。
Tabula CalledProcessError: Command '['java', '-jar', 'C:\\Users\\xxxxx\\AppData\\Local\\Continuum\\anaconda3\\lib\\site-packages\\tabula\\tabula-1.0.1-jar-with-dependencies.jar', '--pages', '1', '--guess', 'C:\\Users\\xxxxxx\\PDFExtractor\\Test.pdf']' returned non-zero exit status 2.
感谢帮助。
答案 0 :(得分:0)
您需要转义反斜杠或使用原始字符串:
df = tabula.read_pdf("C:\\XXXXX\\PDFExtractor\\Test.pdf")
或
df = tabula.read_pdf(r"C:\XXXXX\PDFExtractor\Test.pdf")
否则,您的文件将显示为C:XXXXXPDFExtractorTest.pdf
答案 1 :(得分:0)
我发现了错误。我基本上运行了Java -jar'C:\ Users \ xxxxx \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ tabula \ tabula-1.0.1-jar-with-dependencies.jar''C:\ Users \命令行上的xxxxxx \ PDFExtractor \ Test.pdf”。会抛出错误
但是,如果我将'替换为',那么它将在命令行上提供解析的pdf的输出。
java -jar“ C:\ Users \ xxxxx \ AppData \ Local \ Continuum \ anaconda3 \ lib \ site-packages \ tabula \ tabula-1.0.1-jar-with-dependencies.jar”'C:\ Users \ xxxxxx \ PDFExtractor \ Test.pdf'
现在如何让python在双引号中传递第一部分?