我正在尝试使用以下代码将位于AWS S3存储桶中的CSV文件作为pandas数据帧读入内存:
import pandas as pd
import boto
data = pd.read_csv('s3:/example_bucket.s3-website-ap-southeast-2.amazonaws.com/data_1.csv')
为了提供完全访问,我在S3 bucket上设置了bucket策略,如下所示:
{
"Version": "2012-10-17",
"Id": "statement1",
"Statement": [
{
"Sid": "statement1",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::example_bucket"
}
]
}
不幸的是,python中仍然出现以下错误:
boto.exception.S3ResponseError: S3ResponseError: 405 Method Not Allowed
想知道是否有人可以帮助解释如何在AWS S3中正确设置权限或正确配置panda以导入文件。谢谢!
我最终意识到,您还需要设置bucket中每个单独对象的权限,以便使用以下代码提取它:
我还必须在pd.read_csv命令中修改bucket的地址,如下所示:
使用熊猫0.20.3
你不需要熊猫。。您可以只使用python的默认csv库
希望它能解决你的问题, 祝你好运! :)
相关问题 更多 >
编程相关推荐