Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 制表罐';找不到pdf文件_Python_Python 2.7_Pdf_Pdfminer_Tabula - Fatal编程技术网

Python 制表罐';找不到pdf文件

Python 制表罐';找不到pdf文件,python,python-2.7,pdf,pdfminer,tabula,Python,Python 2.7,Pdf,Pdfminer,Tabula,我想用和分析PDF文件 我阅读并使用以下代码: 从pdfminer.pdfparser导入pdfparser 从pdfminer.pdfdocument导入pdfdocument import magic from pyPdf import PdfFileWriter, PdfFileReader import tabula import numpy as np filename = '/home/parser/test.pdf' magic.from_file(filename,mime=Tr

我想用和分析PDF文件

我阅读并使用以下代码:

从pdfminer.pdfparser导入pdfparser 从pdfminer.pdfdocument导入pdfdocument

import magic
from pyPdf import PdfFileWriter, PdfFileReader
import tabula
import numpy as np
filename = '/home/parser/test.pdf'
magic.from_file(filename,mime=True)

ifpdf = PdfFileReader(file(filename, "rb"))

pdf_info = ifpdf.getDocumentInfo()

nm = [ 'Info_1', 'Info_2','Info_3','Info_4']
df = tabula.read_pdf(filename,pages="all",lattice="all",pandas_options={'header': None,'names':nm,'encoding':'utf-8'})

df.refenseigne.replace(to_replace=r"(M|C)\r",value="",regex=True,inplace=True)
df.to_csv("test.csv",encoding="utf-8")
当我执行我的代码时,我得到了这个错误

Traceback (most recent call last):
  File "parse_pdf.py", line 16, in <module>
    df = tabula.read_pdf(filename,pages="all",lattice="all",pandas_options={'header': None,'names':nm,'encoding':'utf-8'})
  File "/usr/local/lib/python2.7/dist-packages/tabula/wrapper.py", line 87, in read_pdf
    output = subprocess.check_output(args)
  File "/usr/lib/python2.7/subprocess.py", line 567, in check_output
    process = Popen(stdout=PIPE, *popenargs, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
回溯(最近一次呼叫最后一次):
文件“parse_pdf.py”,第16行,在
df=tabla.read\u pdf(文件名,pages=“all”,lattice=“all”,pandas\u选项={'header':无,'names':nm,'encoding':'utf-8'})
文件“/usr/local/lib/python2.7/dist-packages/tabla/wrapper.py”,第87行,pdf格式
输出=子流程。检查输出(args)
文件“/usr/lib/python2.7/subprocess.py”,第567行,在check_输出中
进程=Popen(stdout=PIPE,*popenargs,**kwargs)
文件“/usr/lib/python2.7/subprocess.py”,第711行,在__
错误读取,错误写入)
文件“/usr/lib/python2.7/subprocess.py”,第1343行,在执行子进程中
引发子对象异常
OSError:[Errno 2]没有这样的文件或目录
奇怪的是,在第9行和第11行我可以找到文件,但在第16行我有这个错误


是我错了还是这是一个问题?

我在Ubuntu中遇到了同样的问题

首先,通过运行java--version和javac--version检查机器上安装的JDK和JRE的版本。每个版本应具有大于7的版本

然后使用pip3安装TABLA

它开始读取,但显示以下错误

WARNING: Using fallback font 'LiberationSerif' for 'TimesNewRomanPSMT'
May 10, 2019 12:36:29 PM org.apache.pdfbox.pdmodel.font.PDTrueTypeFont 

它只适用于表格吗?为了区分根本原因,您可以编写最少的代码,然后添加一些其他人员。@chezou non它不适用于tabla py。我已经写了最低限度的代码!我试着在没有魔法的情况下跑步,在阅读pdf之前效果几乎不错。只是确认一下,你是说写最简单的代码,比如
importtabla;tabla.read\u pdf(文件名)
也不起作用?或者,您的意思是tabla py不适用于pdfminer?仅供参考,master branch上的最新代码引入了对象和路径libs之类的文件处理。我希望它能很好地适用于你的情况。@chezou无效的部分是tabla.read\u pdf,它找不到pdf文件,我的同事也一样,