У меня есть код распознавания aws, написанный на Python, и он выполняется с помощью Node API, который отлично работает в системе Windows, но при развертывании его в Linux я сталкиваюсь с этой проблемой: - botocore.errorfactory.InvalidS3ObjectException: An error occurred (InvalidS3ObjectException) when calling the DetectText operation: Unable to get object metadata from S3. Check object key, region and/or access permissions.
Я предоставил роль доступа как AmazonRekognitionFullAccess, так и AmazonS3ReadOnlyAccess.Тем не менее, я не знаю, как это сделать.
Код Python: -
bucket = 'image-test'
def image_to_dict(fileName, bucket):
client = boto3.client('rekognition', 'us-east-2')
response = client.detect_text(Image = { 'S3Object': { 'Bucket': bucket,
'Name': fileName } })
return response
Код узла, используемый для запуска скрипта Python: -
var options = {
mode: 'text',
pythonPath:"/usr/bin/python2.7"
pythonOptions: ['-u'],
scriptPath: "/home/ubuntu/test",
args: [imageURl]
};
PythonShell.run('script.py', options, function (err, results) {
if (err)
throw err;
console.log("Data is: "+results)
Iна моем Ubuntu установлена версия Python 2.7, версия 10.0.1.