Python 如何将csv上传到s3 bucket中的我的文件夹中?

Python 如何将csv上传到s3 bucket中的我的文件夹中?,python,sql,csv,amazon-s3,Python,Sql,Csv,Amazon S3,我的要求是我想将csv文件从localhost上传到s3 bucket中的文件夹中,但我不知道如何在下面的代码中给出文件夹名称。 有人能帮我吗 import boto3 import os def upload_files(path): session = boto3.Session( aws_access_key_id='', aws_secret_access_key='', region_name='us-east-1' )

我的要求是我想将csv文件从localhost上传到s3 bucket中的文件夹中,但我不知道如何在下面的代码中给出文件夹名称。 有人能帮我吗

import boto3
import os

def upload_files(path):
    session = boto3.Session(
        aws_access_key_id='',
        aws_secret_access_key='',
        region_name='us-east-1'
    )
    s3 = session.resource('s3')
    bucket = s3.Bucket('ag-tpch')

    for subdir, dirs, files in os.walk(path):
        for file in files:
            full_path = os.path.join(subdir, file)
            with open(full_path, 'rb') as data:
                bucket.put_object(Key=full_path[len(path)+1:], Body=data)

if __name__ == "__main__":
    upload_files('E:/expenses/shape')

在代码中,您试图将“E:/expenses/shape”下的所有文件上载到S3

我已将其更改为单个文件,您可以稍后根据您的要求进行修改

import boto3
import os

def upload_file(path):
session = boto3.Session(
    aws_access_key_id='',
    aws_secret_access_key='',
    region_name='us-east-1'
)
s3 = session.resource('s3')
bucket = s3.Bucket('ag-tpch')

with open(path, 'rb') as data:
            bucket.put_object(Key='some/path/to-s3/test1.csv'], Body=data)
//your s3 path will be /some/path/to-s3/test-x.csv
if __name__ == "__main__":
upload_files('E:/expenses/shape/test1.csv')

“我不知道如何在下面的代码中给出foldername”什么代码?请查看我发布的代码并帮助我清除这个@tagc谢谢你,但我的问题是如何将文件上传到我的s3文件夹bucketchange此bucket.put_对象(Key='some/path/to-s3/test1.csv']到bucket.put_对象(Key='my-folder/test1.csv']如果我需要任何帮助,我会联系你的。是的,这是一种简单易行的方法,可以将文件上传到s3 bucket中所需的文件夹中。它工作得很好。每当我对python代码有疑问时,我都想联系你。先生,有什么方法可以跟你联系吗?