如何在python中连接到S3并下载csv [英] How to connect to S3 in python and download a csv

查看:324
本文介绍了如何在python中连接到S3并下载csv的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想连接到私有s3存储桶并在python中下载csv. 这该怎么做?我看到很多关于boto3的评论,所以这是我尝试过的并且失败了.

I want to connect to a private s3 bucket and download a csv in python. How to do this? I see a lot of comments talking about boto3, So This is what i ve tried and it is failing.

   from boto3.session import Session
   import pandas as pd
   import boto3

   ACCESS_KEY='A'
   SECRET_KEY='s/'

   session = Session(aws_access_key_id=ACCESS_KEY,
              aws_secret_access_key=SECRET_KEY)
   s3 = session.resource('s3')

   obj = s3.get_object(Bucket='sp-dps', Key='da-la/hp/hp_co/current')

   df = pd.read_csv(obj['Body'])

推荐答案

    import boto
    from boto.s3.key import Key

    keyId ="xxx" (AWS KEY)
    sKeyId="yyy" (AWS SECRET KEY ID)
    srcFileName="/abc/def/ghi/jkl/part_data_1"
    destFileName="s3_part_data_1.csv"
    bucketName="s-bucket"

    conn = boto.connect_s3(keyId,sKeyId)
    bucket = conn.get_bucket(bucketName)

    #Get the Key object of the given key, in the bucket
    k = Key(bucket,srcFileName)

    #Get the contents of the key into a file
    k.get_contents_to_filename(destFileName)

上面是正确的代码.

这篇关于如何在python中连接到S3并下载csv的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆