代码之家  ›  专栏  ›  技术社区  ›  dark horse

python-无法将文件上载到AWS S3 bucket中定义的文件夹

  •  1
  • dark horse  · 技术社区  · 6 年前

    我正在尝试从本地上传一个csv文件到awsss3 bucket。下面给出了我正在使用的代码,但没有看到将文件上载到定义的S3文件夹。有人能帮忙吗?

    import boto3
    from botocore.client import Config
    
    ACCESS_KEY_ID = 'accesskeyid'
    ACCESS_SECRET_KEY = 'secretkeyid'
    BUCKET_NAME = 'bucketname'
    
    data = open('/desktop/file.csv', 'rb')
    
    s3 = boto3.resource(
    's3',
    aws_access_key_id=ACCESS_KEY_ID,
    aws_secret_access_key=ACCESS_SECRET_KEY,
    config=Config(signature_version='s3v4')
    )
    s3.Bucket(BUCKET_NAME).put_object(Key='/sub-folder/sub-folder2/file.csv', Body=data)
    
    print ("Uploaded successfully")
    

    有人能帮我找到哪里出了问题吗?谢谢

    1 回复  |  直到 6 年前
        1
  •  1
  •   ame    6 年前

    你需要移除 / 从一开始 Key 参数。

    使用现有代码,文件路径将为: BUCKET_NAME//sub-folder/sub-folder2/file.csv .