我在一个相当简单的文件夹结构中有大量的S3文件(大约150 of的文本文件)。有许多文件夹,每个文件夹中都有几Gb的文件。我想使用boto3遍历s3的内容并下载每个文件,在python中对该文件进行操作(不需要在s3中重新上传/更改原始文件),然后继续下一个文件。最困难的部分是,在存储桶中还有其他我想忽略的对象,比如一些文件夹和zip文件。 我用下面的代码列出了s3的内容,但我不知道如何访问python中的文件名 for object in s3.Bucket('name_of_bucket').objects.all():
print(object) 打印对象会给出
我正在使用boto3将文件从s3存储桶下载到本地系统。我面临的问题是子文件夹的问题。我无法传递文件夹的路径。 如果文件在存储桶下,则文件可以正确下载,但对于子文件夹中的所有其他文件,我会收到以下错误: botocore.exceptions.ClientError: An error occurred (404) when calling the HeadObject operation: Not Found 文件夹结构: S3-bucket
||
==> Sub-Folder 我的代码: aws_f_name = 'text_file.txt'
在EMR集群中运行python时,我正在使用boto3 SDK,该脚本启用了一致的视图。我正在尝试用错误消息Exception while invoking ConsistencyCheckerS3FileSystem.mkdirs over null调试异常。
我的问题是,boto3会导致EMRFS元数据的不一致性吗?在从电子病历执行时,我们应该始终使用boto3上的hadoop/hdfs命令复制/删除s3文件/文件夹吗?