AWS Lambda上的PyteSeract:tesseract未安装或不在您的路径中

2024-09-28 19:24:28 发布

您现在位置:Python中文网/ 问答频道 /正文

lambdaaws:python3.8

ARN测试:

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

lambdaaws:python3.7

ARN测试:

  • arn:aws:lambda:eu-west-3:113088814899:图层: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()执行操作时会出现错误

因为在Python3.7/3.8中导入了相应的ARN工作,所以我认为这个错误非常特殊,并且与pytesseract有关。 但是为什么不能由ARN来处理呢? 我看到另一篇关于教程的帖子,但我总是被这个准确的错误所困扰:tesseract is not installed or it's not in your PATH


Tags: lambdaimportaws图层json错误bodyarn
1条回答
网友
1楼 · 发布于 2024-09-28 19:24:28

But why isn't it handle by the ARN ?

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

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

相关问题 更多 >