AttributeError:模块“camelot”没有属性“read_pdf”
Posted
技术标签:
【中文标题】AttributeError:模块“camelot”没有属性“read_pdf”【英文标题】:AttributeError: module 'camelot' has no attribute 'read_pdf' 【发布时间】:2020-02-11 01:36:21 【问题描述】:我正在尝试使用 camelot 从 pdf 中提取表格,但出现此属性错误。能否请你帮忙?
import camelot
import pandas as pd
pdf = camelot.read_pdf("Gordian.pdf")
AttributeError Traceback(最近一次调用最后一次) 在 ----> 1 pdf = camelot.read_pdf("Gordian.pdf")
AttributeError: 模块 'camelot' 没有属性 'read_pdf'
【问题讨论】:
请阅读github.com/atlanhq/camelot/issues/118 和github.com/atlanhq/camelot/issues/145。如果找不到解决方案,请发布命令 dir(camelot) 的输出 你可能安装了 camleot 而不是 camelot-py 【参考方案1】:以下是完整安装步骤的链接: https://camelot-py.readthedocs.io/en/master/user/install.html#using-pip
安装后
pip install camelot-py[cv]
这样写:
import camelot.io as camelot
【讨论】:
【参考方案2】:我放弃了尝试让 camelot 在 Jupiter Notebooks 中工作以读取表格,而是安装了以下内容:
!sys.executable -m pip install tabula-py tabulate
from tabula import read_pdf
from tabulate import tabulate
pdf_path = (
Path.home()
/ "my_pdf.pdf"
)
df = read_pdf(str(pdf_path), pages=1)
df[0]
【讨论】:
【参考方案3】:请检查您的机器上是否安装了 java,转到您的终端并运行“java -version”,如果没有,您将无法使用 Camelot 或 tabula 阅读 pdf,
安装 java 后,使用命令安装 tabula-py
pip install tabula-py
.
from tabula.io import read_pdf
tables = read_pdf('file.pdf') # substitute your file name
【讨论】:
【参考方案4】:试试这个:import camelot.io as camelot
这对我有用。
【讨论】:
【参考方案5】:下载库时请注意下载位置。因为你下载的库可能已经保存在另一个 Python 版本中
【讨论】:
您好,欢迎来到 SO!请阅读tour 和How do I write a good answer? 例如,您可以详细说明如何关注这种关注,您希望找到什么,以及应该如何解决。【参考方案6】:注意:如果您使用的是虚拟环境,请在执行此操作之前激活环境。
我已经遇到过这个错误。你的代码中没有错误。问题出在 camelot 安装上。
1 删除已安装的 camelot 版本
2 使用此命令再次安装。有多种方法可以安装 camelot。请一一试一试
pip install camelot-py
pip install camelot-py[cv]
pip install camelot-py[all]
3 运行您的代码 >> 我已在此处附加示例代码
import camelot
data = camelot.read_pdf("test_file.pdf", pages='all')
print(data)
【讨论】:
它将在 python 编辑器上工作,例如:pycharm以上是关于AttributeError:模块“camelot”没有属性“read_pdf”的主要内容,如果未能解决你的问题,请参考以下文章
AttributeError:模块 'dbus' 没有属性 'lowlevel'
AttributeError:模块'keras'没有属性'initializers'