Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法从S3存储桶下载文件_Python_Amazon Web Services_Amazon S3 - Fatal编程技术网

Python 无法从S3存储桶下载文件

Python 无法从S3存储桶下载文件,python,amazon-web-services,amazon-s3,Python,Amazon Web Services,Amazon S3,我想从S3 bucket下载此路径中的所有文件all bucket/abc/或/uploads 我尝试使用这个代码段,但只获得了所有bucket/abc 在bucket\u list=bucket.list('or/uploads')中更改路径 这条线坏了?为什么? import boto import sys, os import logging bucket_name = 'abc' conn = boto.connect_s3('XXXXXXXXXXXXXX', 'XXXXXXXXXXX

我想从S3 bucket下载此路径中的所有文件
all bucket/abc/或/uploads

我尝试使用这个代码段,但只获得了
所有bucket/abc

bucket\u list=bucket.list('or/uploads')中更改路径
这条线坏了?为什么?

import boto
import sys, os
import logging

bucket_name = 'abc'
conn = boto.connect_s3('XXXXXXXXXXXXXX', 'XXXXXXXXXXXXXXXXX+XXXXXXXXXXXXXX')
bucket = conn.get_bucket(bucket_name)
bucket_list = bucket.list('or/uploads')

for key in bucket.list():
    try:
        res = key.get_contents_to_filename(key.name)
        print "done"
    except:
        logging.info(key.name + ":" + "FAILED")

AmazonS3没有文件夹/目录。它是一个平面文件结构。 为了保持目录的外观,路径名存储为对象键(文件名)的一部分

确保您下载文件的位置具有完全相同的结构,即..
/abc/或/上载

片段

for key in bucket.list('or/uploads'):
    try:
        res = key.get_contents_to_filename(key.name)
        print "done"
    except:
        logging.info(key.name + ":" + "FAILED")

什么意思,它不工作了?你犯了什么错误?你没有在你发布的代码中的任何地方使用
bucket\u list
。@magni-没有错误,当我在for循环中使用
bucket\u list
时,程序只运行并完成执行,但没有下载任何文件,当我在该路径中使用上述代码文件时,只下载
All bucket/abc
您是否尝试过
/或/上传
?您到底在说什么?在哪一行
bucket\u list=bucket.list('or/uploads')
我想我已经用过这个路径了