VEN*_*RAM 2 python amazon-s3 boto3
我在 s3 中有一个 csv 文件,但每当我调用该函数时,我都必须将数据附加到该文件,但我无法这样做,
df = pd.DataFrame(data_list)
bytes_to_write = df.to_csv(None, header=None, index=False).encode()
file_name = "Words/word_dictionary.csv" # Not working the below line
s3_client.put_object(Body=bytes_to_write, Bucket='recengine', Key=file_name)
Run Code Online (Sandbox Code Playgroud)
这段代码是直接替换文件内的数据而不是追加,有什么解决办法吗?
s3没有附加功能。您需要从 s3 读取文件,将数据附加到代码中,然后将完整文件上传到 s3 中的同一密钥。
查看AWS 论坛上的此主题以了解详细信息
代码可能如下所示:
df = pd.DataFrame(data_list)
bytes_to_write = df.to_csv(None, header=None, index=False).encode()
file_name = "Words/word_dictionary.csv"
# get the existing file
curent_data = s3_client.get_object(Bucket='recengine', Key=file_name)
# append
appended_data = current_data + bytes_to_write
# overwrite
s3_client.put_object(Body=appended_data, Bucket='recengine', Key=file_name)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15904 次 |
| 最近记录: |