【问题标题】:Pytesseract on AWS Lambda: tesseract is not installed or it's not in your PATHAWS Lambda 上的 Pytesseract:tesseract 未安装或不在您的 PATH 中
【发布时间】:2021-04-07 17:35:26
【问题描述】:

Lambda AWS:python 3.8

ARN 测试:

  • arn:aws:lambda:eu-west-3:770693421928:layer:Klayers-python38-pytesseract:15
  • arn:aws:lambda:eu-west-3:770693421928:layer:Klayers-python38-pytesseract:16
  • arn:aws:lambda:eu-west-3:770693421928:layer:Klayers-python38-pytesseract:17

Lambda AWS:python 3.7

ARN 测试:

  • arn:aws:lambda:eu-west-3:113088814899:layer:Klayers-python37-pytesseract:13

lambda_function.py:

import json
import pytesseract
from PIL import Image


def lambda_handler(event, context):
    try:
        body = {
            "text": pytesseract.image_to_string(Image.open('random_text.png')),
        }
    except Exception as e:
        body = str(e)

    response = {
        "statusCode": 200,
        "body": json.dumps(body)
    }


    return response

导入所有内容时没有错误,当我尝试使用 pytesseract.image_to_string() 执行操作时出现错误

由于在 python 3.7/3.8 中导入并具有相应的 ARN 工作,我认为该错误非常特殊并关注 pytesseract。 但为什么它不由 ARN 处理? 我看到其他关于教程的帖子,但我总是陷入这个精确的错误:tesseract is not installed or it's not in your PATH

【问题讨论】:

  • 进展如何?你用你的 lambda 设置了tesseract 吗?
  • 不,我失败了。 ://

标签: python amazon-web-services lambda tesseract


【解决方案1】:

但为什么不由 ARN 处理?

该层仅适用于实际 tesseract 二进制文件的 pytesseract 包装器。 tesseract 程序不附带它。

因此,您必须自己为 lambda 环境构建 tesseract 二进制文件,并将其与您的 lambda 函数捆绑在一起。 here 显示了一种方法。

【讨论】:

    猜你喜欢
    • 2020-08-26
    • 1970-01-01
    • 1970-01-01
    • 2013-10-17
    • 2014-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-27
    相关资源
    最近更新 更多