python amazon s3 upload and generate accessible url

from boto3.session import  Session
AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''
region = 'us-west-2'
bcn = 'xxx' #bucket桶名称
session = Session(aws_access_key_id=AWS_ACCESS_KEY_ID,
                  aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
                  region_name=region)
s3 = session.resource('s3')
client = session.client('s3')
extra_args = {
        # 'ACL': 'public-read',  # 设置访问权限
        # 'ContentType': 'application/xml'  # 设置上传的文件类型
    }
data = open(r'C:\Users\NING MEI\Desktop\test.zip', 'rb')

file_obj = s3.Bucket(bcn).put_object(Key='test/test.zip', Body=data)
# response = client.upload_file(
#         Filename=r"C:\Users\NING MEI\Desktop\test.zip", Bucket=bcn, Key='test/test.zip', ExtraArgs=extra_args
#     )
url = client.generate_presigned_url('get_object',Params={'Bucket':bcn,'Key':'test/test.zip'},ExpiresIn=2626560)
print(url)
#Key test/ 是存在某个文件夹

Guess you like

Origin blog.csdn.net/m0_38124502/article/details/126429314