如何使用boto3读取位于S3存储桶中的JSON文件?
如何使用boto3从S3存储桶中读取JSON文件?
在Stack Overflow上有一个类似的问题已经被回答过了。欢迎来到Stack Overflow,当你提问时需要附上你的示例代码,这表明你已经做了研究但没有找到有用的信息。请参考如何在Stack Overflow上提问好问题。
以下是使用boto3读取S3存储桶中JSON文件的示例代码:
import boto3 s3 = boto3.resource('s3') bucket = s3.Bucket('test-bucket') # 遍历所有对象,进行分页处理 for obj in bucket.objects.all(): key = obj.key body = obj.get()['Body'].read()
如果要从特定文件夹中读取文件,可以尝试以下代码:
import boto3 s3 = boto3.resource('s3') my_bucket = s3.Bucket('my_bucket_name') # 使用前缀过滤特定文件夹下的对象 for object_summary in my_bucket.objects.filter(Prefix="dir_name/"): print(object_summary.key)
感谢M.Vanderlee的回答。
作者尝试了相同的方法,但出现了以下错误:Attribute Error:'str object has no attribute 'óbjects'。
请修改您的答案并展示您所尝试的代码。
作者已经找到了如何读取JSON文件的方法,感谢您的帮助。还有一个问题:如果我只想从存储桶中的特定文件夹读取JSON文件,该如何操作?
不用担心!你能接受我的回答吗?另外,在我定义了key
的地方,你可以尝试使用obj.all
。这应该可以工作。
嘿,我编辑了我的答案以满足你的新问题,请看看现在的答案。