如何将 pytesseract 部署到 Heroku

use*_*126 2 opencv tesseract heroku python-3.x python-tesseract

我有一个 Python 应用程序,它在我的机器上通过 Localhost 写得很好。

我正在尝试将其部署到 Heroku。然而,这似乎不可能完成(我现在已经花了大约 30 个小时尝试)。

问题是 Tesseract OCR。我正在使用 pytesseract 包装器,我的代码利用了它。但是,无论我尝试什么,在将pytesseract上传到Heroku时似乎都无法使用它。

任何人都可以建议如何通过 pytesseract 将 Hello World Tesseract OCR Python 应用程序部署到 Heroku,或者如果 Heroku 无法做到这一点,请提出 Heroku 的替代方案?

小智 9

对于希望在 heroku 上部署 pytesseract 的其他人,以下是步骤:

  • 将 apt buildpack 添加到 heroku

    heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt
    
    Run Code Online (Sandbox Code Playgroud)
  • Aptfile在与您的应用程序相同的目录中创建一个文件,并将这些行添加到它(英语)

    tesseract-ocr
    tesseract-ocr-eng
    
    Run Code Online (Sandbox Code Playgroud)
  • 将 heroku 配置变量设置TESSDATA_PREFIX为 tessdata 文件夹的路径(它是/app/.apt/usr/share/tesseract-ocr/4.00/tessdata给我的),可以通过运行 heroku shell 找到它,heroku run bash并在 shell 中运行此命令

    find -iname tessdata
    
    Run Code Online (Sandbox Code Playgroud)
  • 使用设置配置变量

    heroku config:set TESSDATA_PREFIX=/app/.apt/usr/share/tesseract-ocr/4.00/tessdata
    
    Run Code Online (Sandbox Code Playgroud)

    用您从上一个命令获得的路径替换路径

构建 Tesseract 时,应将其安装在 heroku 应用程序中。确保您的requirements.txt文件中有 pytesseract 。现在您应该可以在 heroku 上导入和使用 pytesseract


Ran*_*ger 0

默认情况下,Python 构建包可能没有安装 tesseract 二进制文件。这里\xe2\x80\x99是一个创建适当环境的第三方构建包。按照其中的说明操作,使二进制文件可供您的应用程序使用。

\n