gpt4 book ai didi

python - Pandas read_csv 指定 AWS 配置文件

转载 作者:行者123 更新时间:2023-12-04 15:24:30 27 4
gpt4 key购买 nike

Pandas (v1.0.5) 使用 s3fs库以连接 AWS S3 并读取数据。默认情况下,s3fs 使用在 ~/.aws/credentials 中找到的凭据。文件在 default轮廓。从 S3 读取 CSV 文件时,如何指定 Pandas 应使用哪个配置文件?
例如。

s3_path = 's3://mybucket/myfile.csv'
df = pd.read_csv(s3_path)
$ cat ~/.aws/credentials
[default]
aws_access_key_id = ABCD
aws_secret_access_key = XXXX
[profile2]
aws_access_key_id = PQRS
aws_secret_access_key = YYYY
[profile3]
aws_access_key_id = XYZW
aws_secret_access_key = ZZZZ
编辑:
当前的黑客/工作解决方案:
import botocore
import s3fs
session = botocore.session.Session(profile='profile2')
s3 = s3fs.core.S3FileSystem(anon=False, session=session)
df = pd.read_csv( s3.open(path_to_s3_csv) )
上述解决方案的唯一问题是您需要导入 2 个不同的库并实例化 2 个对象。保持问题开放,看看是否有另一种更清洁/简单的方法。

最佳答案

import s3fs
s3 = s3fs.S3FileSystem(anon=False, profile_name="your-profile-name")
我相信不要使用boto,你可以使用s3fs的这个S3FileSystem部分。然后使用文件处理程序,例如:
with s3.open('bucket/file.txt', 'rb') as f:

关于python - Pandas read_csv 指定 AWS 配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62562945/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com