簡體   English   中英

無法將 Tesseract 部署到 Google App Engine

[英]Can't deploy Tesseract to Google App Engine

我正在使用 Tesseract 處理 OCR。 當我在本地工作時它工作正常,但是當我部署到 Google App Engine 時我無法讓它工作。

這是部署中代碼中斷的行:

d = pytesseract.image_to_data(img, output_type=Output.DICT)

我從gcloud 應用程序日志中收到此錯誤tail -s

文件“/app/pol_flow.py”,第 1587 行,在 upload_ocr d = pytesseract.image_to_data(img, output_type=Output.DICT) 文件“/usr/local/lib/python3.6/site-packages/pytesseract/pytesseract. py”,第 409 行,在 image_to_data 中,如果 get_tesseract_version() < '3.05':
文件“/usr/local/lib/python3.6/site-packages/pytesseract/pytesseract.py”,第118行,在wrapper wrapper._result = func(*args, **kwargs)
文件“/usr/local/lib/python3.6/site-packages/pytesseract/pytesseract.py”,第327行,在get_tesseract_version raise TesseractNotFoundError() pytesseract.pytesseract.TesseractNotFoundError: /app is not installed or it's not in your path

TesseractNotFoundError() pytesseract.pytesseract.TesseractNotFoundError: /app is not installed> 或者它不在你的路徑中

我知道我必須像這樣將位置傳遞到代碼中:

pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe"

但是我不知道部署時安裝 Tesseract 的路徑。

謝謝你的幫助!

PS:我遵循了這個答案,但是當我向 App Engine 中部署的端點發出請求時,我仍然收到相同的錯誤:TesseractNotFoundError()

您的問題的正確答案是使用 App Engine 標准無法做到這一點。 您可以使用 App Engine 柔性環境來實現這一點:您可以選擇帶有Dockerfile自定義運行時,該文件允許您安裝所需的一切,在這種情況下,只需添加apt-get install tesseract-ocr

另一種選擇是使用Cloud Run ,正如@llompalles 所建議的那樣。 我已經實施了他分享的解決方案,它對我有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM