我在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'
有什么解决办法吗?请帮帮我!
1条答案
按热度按时间8yparm6h1#
如本文所述,get_对象返回一个dict
您可能正在寻找