我对这些东西很陌生,我想得到s3 bucket的位置,但我仍然有这个错误"NoAuthHandlerFound:没有准备好进行身份验证的处理程序。检查了1个处理程序。[‘HmacAuthV1Handler’]检查您的凭据"甚至我在使用访问密钥和密钥?代码是这样的。。
from boto3.session import Session
import boto
ACCESS_KEY_ID = '*****'
SECRET_KEY = '*****'
session = Session(aws_access_key_id = ACCESS_KEY_ID, aws_secret_access_key = SECRET_KEY)
s3 = session.resource('s3')
bucket = 's3://****'
my_bucket = s3.Bucket(bucket)
**conn = boto.connect_s3()
bucket = conn.get_bucket('*****')
bucket_location = my_bucket.get_location()
if bucket_location:
conn = boto.s3.connect_to_region(bucket_location)
bucket = conn.get_bucket('*****')**
您只需使用get_bucket_location:
import boto3
session = boto3.session.Session(aws_access_key_id = ACCESS_KEY_ID, aws_secret_access_key = SECRET_KEY)
s3 = session.client('s3')
response = s3.get_bucket_location(
Bucket='bucket-name'
)
print(response['LocationConstraint'])