python 从api保存到s3存储桶

dddzy1tm  于 2022-12-02  发布在  Python
关注(0)|答案(2)|浏览(148)

我尝试使用bot 03和python将下面的python代码从api保存到amazon s3 bucket中,但是我看不出哪里出错了。当我执行代码时,我没有得到任何错误,但是文件从来没有出现在s3 bucket中。

import boto3
from botocore.exceptions import ClientError

file_name = "test.csv"
bucket = "mybucket"

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',})

    s3 = bot03.client("s3")
    with open("test.csv","rb") as file2:
     s3.upload_fileobj(x.content, bucket, "test.cvc")

任何提示/建议将不胜感激。我是一个python/aws新手,所以如果一个基本的问题道歉

cunj1qz1

cunj1qz11#

我用这个密码得到了我需要的东西

file_name = "test.csv"
bucket = "my_bucket"

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',})


    s3_resource = boto3.resource('s3')
    s3_resource.Object(bucket, 'snowflake/csv/df1.csv').put(Body=x.content)

if __name__ == "__main__":
    main()
3qpi33ja

3qpi33ja2#

根据OP(原始帖子),您是否尝试过
(line 11)s3 = boto 3.客户端(“s3”)- OP:bot 03.客户端(“s3”)

相关问题