我有一些python代码,可以将api的响应保存到计算机的文件系统中。如何将api响应(csv)直接保存到AmazonS3存储桶,而不必将其保存到我的计算机文件系统。
我看过使用bot03的示例,但它们只显示了从本地文件系统上载的示例。我想做的是将csv文件直接保存到s3存储桶中。任何建议都将不胜感激-我是python新手。
这是我用来保存到本地文件系统的代码:
import requests
import csv
def main():
url = "https://api0.solar.sheffield.ac.uk/pvlive/v3/pes/10?start=2021-01-01T00:00:00&end=2021-07-06T00:00:00&data_format=csv"
x = requests.get(url,headers={'Content-Type': 'application/json', 'Accept': 'application/json', 'Accept-Encoding': 'gzip, deflate',})
# save to csv
with open('C:\\Users\myDirectory\myFile.csv', 'wb') as file:
file.write(x.content)
非常感谢
1条答案
按热度按时间qq24tv8q1#
boto3's
put_object
支持从中上载文件bytes
或file
,这不需要您先将其保存到文件:https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#s3.client.put_object
body=b'bytes'|文件,