无法使用 python 将数据附加到 AWS S3 中的现有 csv 文件

赛博机械

我的 s3 存储桶中有一个 csv 文件,并在本地计算机中配置了 aws cli。每当我调用 python 脚本时,我都想将数据附加到该 csv 文件中,但我无法做到这一点。

s3_client = boto3.client('s3')
df = pd.DataFrame(data_list)
bytes_to_write = df.to_csv(None, header=None, index=False).encode()
file_name = 'test.csv'
# get the existing file
current_data = s3_client.get_object(Bucket='test-bucket', Key=file_name)
# append
appended_data = current_data + bytes_to_write
# overwrite
s3_client.put_object(Body=appended_data, Bucket='test-bucket', Key=file_name)
enter code here

我已经尝试了上面的代码,但不幸的是无法完成操作,我收到以下错误

Traceback (most recent call last):
  File "script.py", line 17, in <module>
    appended_data = current_data + bytes_to_write
TypeError: unsupported operand type(s) for +: 'dict' and 'bytes'

有什么解决办法吗?请帮我!

安东尼·里奇
current_data = s3_client.get_object(Bucket='test-bucket', Key=file_name)

如上所述这里,返回的get_object的字典

您可能正在寻找

s3_client.get_object(Bucket='test-bucket', Key=file_name)['Body'].read().decode("utf-8")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用Python在myBucket中上传CSV文件并在S3 AWS中读取文件

如何使用Python将数据附加到现有的AVRO文件中

将数据附加到 csv 文件中的行尾(Python)

使用AWS Lambda在S3中更改CSV文件

将数据附加到包含数据的现有 csv 文件

如何使用python boto3更新AWS S3中现有对象的元数据?

如何将 CSV 文件附加到 Python 中的现有 zip 存档?

使用python将csv文件写入Amazon S3

是否可以将csv文件中的数据附加到现有的mysql表中

无法使用 Python 脚本和通配符将多个文件上传到 AWS S3

AWS Lambda 使用 Python,从 S3 Bucket 中获取 .json 文件数据并放入 DynamoDB

使用 react-aws-s3 将 csv 文件上传到 S3

将新数据附加到 R 中的现有 csv 文件

如何将标题附加到由 python 数据框创建的 csv 文件中的数据

Amazon S3:使用aws s3 cp而不下载现有文件?

Python-无法将文件上传到AWS S3存储桶中的已定义文件夹

使用python(和matplotlib?)将页面附加到现有的pdf文件中

将 csv 文件中的特定数据附加到单独的 python 列表中

将 csv 文件写入 AWS S3 失败

Django:将CSV文件上传到AWS S3

使用Scala中的AWS Glue在S3中加载CSV文件

使用AWS Boto将文件从CSV转换为S3上的拼花地板

将文件从AWS Lambda(Python)中的多部分/表单数据上传到S3

AWS S3中存储的巨大CSV文件的数据屏蔽

AWS Lambda:使用Python从s3存储桶读取csv文件尺寸,而无需使用Pandas或CSV包

无法将数据帧附加到 csv 文件

使用python将多个csv数据写入并附加到新的csv中

使用aws_s3.query_export_to_s3函数无法将AWS RDS Postgres表导出到S3中的CSV

如何使用 python 3.8 将文件上传到 AWS S3 子文件夹?