我正在尝试使用AWS Rekognition,detect_text API。我正在使用Boto3和Python 3。
以下是我的相关代码:
with open(file_path, 'rb') as file:
data = file.read()
response = self._rekognition.detect_text(Image={'Bytes': data})
此代码适用于Python2.7,但在Python3中失败。我收到以下错误:
File "...", line 39, in extract_text
response = self._rekognition.detect_text(Image={'Bytes': data})
...
...
k_date = self._sign(('AWS4' + key).encode('utf-8'),
TypeError: Can't convert 'bytes' object to str implicitly
我需要在这里改变任何想法。
答案 0 :(得分:1)
在python 3中,您可能需要使用。
将字节转换为strdata.decode('utf-8')
或者您可以将文本文件作为文本本身阅读。
尝试:
with open(file_path, encoding='utf-8') as file:
data = file.read()
response = self._rekognition.detect_text(Image={'Bytes': data})
我不知道_rekognition.detect接受了什么,但你可以试试。