[英]upload a dataframe as a zipped csv directly to s3 without saving it on the local machine
[英]Saving an object to CSV directly to S3
我有一個通過 HTTP 響應收到的類似 object 的文件,我想在 S3 中直接將其另存為 CSV。 我嘗試使用 S3 存儲桶及其路徑,但遇到錯誤,因為找不到此類文件
有人可以幫我這里的代碼 - r5 是 URL 響應,rr= r5.raw 具有響應數據 object。 這個 object 必須作為 CSV 直接保存到 S3 中。
帶有發送現有文件示例的文檔: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/s3-uploading-files.html
如果您在字符串中有文件內容,請使用BytesIO
使其成為類似文件的 object:
s3 = boto3.resource("s3")
bucket = s3.Bucket(bucket_name)
stream = io.BytesIO(my_str_data.encode()) # boto3 only allows to bytes data, so we need to encode
filename = "filename_here"
bucket.upload_fileobj(stream, filename)
既然你說你已經有一個類似 object 的文件,請確保它是類似 object 的字節文件,然后替換stream
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.