使用python的AWS EndPoint连接错误

时间:2018-08-24 18:13:58

标签: python-3.x amazon-web-services amazon-s3 amazon-ec2 aws-sdk

我看到的帖子很少,而且端点连接配置文件存在问题,但似乎我的配置文件还可以,仍然面临问题 我的.aws / config文件

[default]
aws_access_key_id=XXX
aws_secret_access_key=XXX
region=ap-south-1
output = text


>>> import boto3
>>> translate = boto3.client(service_name='translate',region_name='ap-south-1', use_ssl=True)
>>> result = translate.translate_text(Text="Hello, World", 
            SourceLanguageCode="en", TargetLanguageCode="de")


Traceback (most recent call last):
  File "<pyshell#2>", line 2, in <module>
    SourceLanguageCode="en", TargetLanguageCode="de")
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/client.py", line 314, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/client.py", line 599, in _make_api_call
    operation_model, request_dict)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/endpoint.py", line 148, in make_request
    return self._send_request(request_dict, operation_model)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/endpoint.py", line 177, in _send_request
    success_response, exception):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/endpoint.py", line 273, in _needs_retry
    caught_exception=caught_exception, request_dict=request_dict)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/hooks.py", line 227, in emit
    return self._emit(event_name, kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/hooks.py", line 360, in _emit
    aliased_event_name, kwargs, stop_on_response
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/hooks.py", line 210, in _emit
    response = handler(**kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 183, in __call__
    if self._checker(attempts, response, caught_exception):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 251, in __call__
    caught_exception)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 277, in _should_retry
    return self._checker(attempt_number, response, caught_exception)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 317, in __call__
    caught_exception)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 223, in __call__
    attempt_number, caught_exception)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/botocore/retryhandler.py", line 359, in _check_caught_exception
    raise caught_exception
botocore.exceptions.EndpointConnectionError: Could not connect to the endpoint URL: "https://translate.ap-south-1.amazonaws.com/"
>>> 

我已经使用AdministratorAccess创建了IAM用户

2 个答案:

答案 0 :(得分:1)

在ap-south-1(孟买)地区不提供Amazon Translate。这就是为什么boto3无法连接到端点的原因。您需要选择一个受支持的区域。

有关受支持区域的当前列表,请参考此链接: Amazon Translate Supported Regions

Amazon Translate Region Table

答案 1 :(得分:0)

我在连接中断时遇到了同样的错误 - botocore.exceptions.EndpointConnectionError:无法连接到端点 URL:“https://ec2.us-east-2.amazonaws.com/”

当连接恢复后,它就可以正常工作了。此错误的可能原因是

连接错误 区域无法满足您的请求,因为每个请求都会命中 AWS 上的端点(更多详细信息可以在 https://docs.aws.amazon.com/general/latest/gr/rande.html#billing-pricing 上找到) 看起来 Boto3 已经足够成熟,可以抛出异常,因为无法准确知道发生了什么。

此外,如果您有任何与配置相关的问题,那么大多数问题都封装在 ClientError 异常中。