【问题标题】:Python-camelot (Error: GhostscriptNotFound while it is installed)Python-camelot(安装时出现错误:GhostscriptNotFound)
【发布时间】:2018-11-15 12:03:06
【问题描述】:

我正在尝试使用 camelot 从 pdf 中提取表格数据,但出现以下错误。

代码:

tables = camelot.read_pdf(file_name)

错误:

GhostscriptNotFound:请确保 Ghostscript 已安装且在 PATH 环境变量中可用

我已经安装了 Ghostscript,并且可以在 PATH 环境变量中使用它。

请查看以下版本详细信息:

  • Windows-10-10.0.17134-SP0
  • Python 3.6.5 |Anaconda, Inc.| (默认,2018 年 3 月 29 日,13:32:41)[MSC v.1900 64 位 (AMD64)]
  • NumPy 1.14.3
  • openCV 3.4.3
  • 卡米洛特 0.3.2

请帮助解决这个问题。

【问题讨论】:

  • 您可以在这里看到 Camelot 如何尝试找到您的 GhostScript。 github.com/socialcopsdev/camelot/blob/… 在 Windows 上,它正在寻找“gswin32c”或“gswin64c”。您能否确认您可以在命令行上运行“gswin32c”或“gswin64c”?

标签: python python-camelot


【解决方案1】:

我意识到了这一点。如果您使用的是 Python 64 位,则需要安装 ghostcript64 位,否则安装 32 位。

还为 64 位设置路径: C:\Program Files\gs\gs9.26\bin C:\Program Files\gs\gs9.26\lib

或对于 32 位以下 C:\Program Files(x86)\gs\gs9.26\bin C:\Program Files(x86)\gs\gs9.26\lib

【讨论】:

  • 使用 python 64bits、ghostcript64bit (9.55.0) 和路径:C:\Program Files\gs\gs9.55.0\binC:\Program Files\gs\gs9.55.0\lib 对我有用。
【解决方案2】:

这对我有用:

C:\Program Files\gs\gs9.55.0\bin

只需找到路径位置,将其复制,然后将其粘贴到用户和系统变量Path(环境变量)中即可。

【讨论】:

  • 如何将其路径粘贴到用户和系统变量路径中? @AlexanderGarzo
  • 在 google/youtube 上搜索如何设置变量路径。
  • 在你的电脑上搜索“环境变量”,依次点击“路径”、“编辑”、“新建”,粘贴到路径位置,点击确定,然后重启电脑。
【解决方案3】:

我卸载了 64 位和

  1. 安装 32 位版本
  2. 添加路径

    C:\Program Files(x86)\gs\gs9.26\bin

    C:\Program Files(x86)\gs\gs9.26\lib

现在可以了

【讨论】:

  • 只是为了澄清说添加路径是为了让Windows将它添加到环境变量路径中?谢谢
【解决方案4】:

我解决了这个问题。

  1. 我下载了Ghostscript
  2. 然后安装在C:/programfiles
  3. 添加设置路径:C:\Program Files\gs\gs9.26\bin + C:\Program Files\gs\gs9.26\lib
  4. 重新启动我的电脑。

经过这些步骤,它工作了。

【讨论】:

【解决方案5】:

对我来说,使用brew link -f --overwrite ghostscript 解决了这个问题。 我建议在https://github.com/atlanhq/camelot/issues/282 上查看建议的解决方案。这也是我找到解决方法的地方。

【讨论】:

    【解决方案6】:

    尝试了所有解决方案。唯一可行的选择是使用 32 位 ghostscript。

    【讨论】:

    【解决方案7】:

    从这里https://www.ghostscript.com/download/gsdnld.html 下载 Ghostscript 并在需要时将其添加到路径中

    【讨论】:

    • 您好!你的意思是像环境变量路径?顺便说一句,我在窗户上。
    【解决方案8】:

    将 Ghostscript 的“bin”和“lib”路径添加到 PATH 对我有用:

    • C:\Program Files\gs\gs9.26\bin
    • C:\Program Files\gs\gs9.26\lib

    【讨论】:

      【解决方案9】:

      我遇到了同样的问题。我通过卸载64位版本并安装32位版本解决了。

      【讨论】:

        【解决方案10】:

        我收到此错误(OSError:未安装 Ghostscript。您可以使用此处的说明安装它:https://camelot-py.readthedocs.io/en/master/user/install-deps.html) 我尝试了这里和 Github 中提到的所有内容。 但是在从here 安装 Ghostscript 然后添加到 PATH 之后。 我一直在尝试解决它的方法。 但解决方案是重新启动计算机,一切正常。 所以重启是必须的。

        【讨论】:

          【解决方案11】:

          这是我的解决方案(Windows 操作系统(11、64 位)):

          1. 下载并安装您想要的 Ghost 版本(32,64 - 无所谓)
          2. 使用“dir /x”命令,获取安装路径的 short 版本(c:\progra~1\blahbla...)。我的位置(我喜欢更改默认建议)是“C:\Program Files\gs\GPLGhostScript”,short 名称是“c:\progra~1\gs \GPLGhostScript"
          3. 将此与 \bin 一起添加到路径中。在我的情况下,“c:\progra~1\gs\GPLGhostScript\bin”(不需要其他人建议的 lib 路径)
          4. 重启电脑
          5. 根据link 测试您的 GhostScript 安装。

          祝你好运:)

          【讨论】:

            【解决方案12】:

            一个非常简单的方法是从the official website 安装Ghostscript。

            然后在 Anaconda 脚本文件夹中设置库时给出位置。关闭 Python 平台后等待 10 分钟。

            【讨论】:

            • @StressdBoi69420 已修复...
            【解决方案13】:

            我遇到同样的问题 2 天。我在下面的链接中找到了解决方案。

            对于 windows 10,我使用了下面的方法

            1. 在“搜索 web 和 windows”中写下“在控制面板中为您的帐户编辑环境变量。”
            2. 在此处编辑 Ghostscript 的 lib 和 bin 库的路径。添加 ;也将路径分开。 set path in environment variable

            有关以下链接的更多信息。对我来说效果很好。

            https://github.com/atlanhq/camelot/issues/465#issuecomment-975976344

            【讨论】:

              【解决方案14】:

              对我来说,卸载 camelot 并重新安装 conda install -c conda-forge camelot-py 而不是 pip 解决了问题(因为 ghostscript 也重新安装了)

              【讨论】:

                【解决方案15】:

                这就是我在 Windows 计算机上解决此错误的方法,类似于 Alexander Garzo 发布的内容:

                1. 转到文件资源管理器 -> C 驱动器 -> 程序文件 -> gs -> gs9.55.0 -> 按住 shift 键单击 bin 文件夹 -> 复制为路径(“C:\Program Files\gs\gs9.55.0\垃圾箱")
                2. 然后去环境变量->路径->编辑->新建->上面粘贴->确定->重启电脑。

                然后我在 Python 中运行了以下代码:

                import ctypes
                from ctypes.util import find_library
                find_library("".join(("gsdll", str(ctypes.sizeof(ctypes.c_voidp) * 8), ".dll")))
                

                输出是“C:\Program Files\gs\gs9.55.0\bin\gsdll64.dll”,这意味着解决方案有效。然后我就可以毫无问题地安装和使用 Camelot。

                【讨论】:

                  猜你喜欢
                  • 2022-07-01
                  • 1970-01-01
                  • 2021-05-07
                  • 1970-01-01
                  • 2011-03-06
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  • 1970-01-01
                  相关资源
                  最近更新 更多