AttributeError:'str'对象没有属性'get'ocr

时间:2019-11-24 13:45:03

标签: python ocr cv2

import cv2
import numpy as np
import requests
import io
import json
import os

cur_path=os.getcwd()
img_name = input("input file name : ")
image_path = os.path.join(cur_path, img_name)
img = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)

sample = img

# Ocr
url_api = "https://api.ocr.space/parse/image"
_, compressedimage = cv2.imencode(".jpg", sample, [1, 90])
file_bytes = io.BytesIO(compressedimage)

result = requests.post(url_api,
              files = {"screenshot.jpg": file_bytes},
              data = {"apikey": "helloworld",
                      "language": "eng"})

result = result.content.decode()
result = json.loads(result)

parsed_results = result.get("ParsedResults")[0]
text_detected = parsed_results.get("ParsedText")
print(text_detected)


cv2.imshow("Img", img)
cv2.waitKey(0)
cv2.destroyAllWindows()

所有与代码有关。

尝试使用OCR将图像更改为文本时发生错误。令人尴尬的是,它并非并非一帆风顺。我需要你的帮助...

Traceback (most recent call last):
  File "D:/Programming/OCR_PY/venv/main.py", line 31, in <module>
    parsed_results = result.get("ParsedResults")[0]
AttributeError: 'str' object has no attribute 'get'

所有与错误有关。

1 个答案:

答案 0 :(得分:0)

api密钥已过期,可以通过在ocr.space网站上注册获得免费的新密钥,但是每天每IP的呼叫次数限制为500