我正在使用boto3 python模块来访问S3。
创建存储桶在Windows中工作,但在ubuntu中不起作用。
它抛出下面给出的错误,
botocore.exceptions.EndpointConnectionError: Could not connect to the endpoint URL: "https://bucket_name.s3.amazonaws.com/"
示例代码:
aws_access_key = ""
aws_secret_key = ""
s3_region = "us-east-1"
s3_connection = boto3.client('s3', aws_access_key_id=aws_access_key,
aws_secret_access_key=aws_secret_key,
region_name=s3_region)
s3_connection.create_bucket(Bucket='bucket_name')
错误消息建议region_name = 'bucket_name'
,这与您向我们展示的代码不匹配。
另外,请注意,将凭据放在源代码中被认为是不明智的。相反,您应该使用 AWS 命令行界面 (CLI( aws configure
命令将凭证存储在 ~.aws/credentials
中。然后,可以从代码中删除它们。
然后,您可以运行此代码来创建存储桶:
import boto3
s3_client = boto3.client('s3', region_name='us-east-1')
s3_client.create_bucket(Bucket='foo')