从 s3 读取 csv 并作为多部分上传到外部 api

Read csv from s3 and upload to external api as multipart

我想使用 boto3 从 s3 存储桶中读取 csv 文件,并使用 multipart/form-data 请求将其上传到外部 API。 到目前为止,我能够阅读 csv

response = s3.get_object(Bucket=bucket, Key=key)
body = response['Body']

不确定如何将此正文转换为多部分。 外部 api 将在 multipart/form-data 中接受请求。 任何建议都会有所帮助。

以下方法解决了我的问题。

body = response['Body'].read()
multipart_data = MultipartEncoder(
        fields={
            'file': (file_name, body, 'application/vnd.ms-excel'),
            'field01': 'test'
        }
    )

.read() 方法将文件转换为二进制字符串。