AWS获取S3中所有相关文件路径
在做数据预处理的时候, 先是在local实现, 使用了os去获取单个文件夹下所有文件的路径然后去处理. def get_file_list ( mainfile ) : path_list = [ ] for doc in os . listdir ( mainfile ) : newpath = os . path . join ( mainfile , doc ) if os . path . isfile ( newpath ) : path_list . append ( newpath ) return path_list 然而在将代码转移到AWS Sagemaker时当然就不能使用os去获取路径了. 要理解的是S3是没有folder的概念的, 虽然我们在S3的console里面可以看到类似folder的结构, 但实际上我们只是在不同object的名称中加了prefix而已. (其实我觉得是一个东西…但亚麻强调没有…那就没有吧)下面是获取一个buket中相关key的所有文件路径的方法 import boto3 def get_file_list ( bucket_name , prefix ) : s3 = boto3 . resource ( 's3' ) bucket = bucket_name my_bucket = s3 . Bucket ( bucket )