![](/img/trans.png)
[英]recursively copying data from s3 changing the folder structure using python boto3
[英]Error was retrieving data from S3 using boto for python
我正在嘗試使用boto for python從Amazon S3獲取數據。
from boto.s3.connection import S3Connection
AWS_KEY = 'MY_KEY'
AWS_SECRET = 'MY_SECRET'
aws_connection = S3Connection(AWS_KEY, AWS_SECRET)
bucket = aws_connection.get_bucket('s3://mybucket.buckets.com/')
for file_key in bucket.list():
print file_key.name
我正在傳遞一個有效的Key,secret_key和Bucketname。
當我嘗試執行上面的代碼時,我收到以下錯誤 -
Traceback (most recent call last):
File "MyPython_Script.py", line 7, in <module>
bucket = aws_connection.get_bucket('s3://mybucket.buckets.com/')
File "/usr/local/lib/python2.7/site-packages/boto/s3/connection.py", line 506, in get_bucket
return self.head_bucket(bucket_name, headers=headers)
File "/usr/local/lib/python2.7/site-packages/boto/s3/connection.py", line 525, in head_bucket
response = self.make_request('HEAD', bucket_name, headers=headers)
File "/usr/local/lib/python2.7/site-packages/boto/s3/connection.py", line 668, in make_request
retry_handler=retry_handler
File "/usr/local/lib/python2.7/site-packages/boto/connection.py", line 1071, in make_request
retry_handler=retry_handler)
File "/usr/local/lib/python2.7/site-packages/boto/connection.py", line 1030, in _mexe
raise ex
socket.gaierror: [Errno 8] nodename nor servname provided, or not known
知道如何克服這個錯誤嗎? 我的格式是否用於傳遞桶名稱是否正確?
您只需要傳遞桶的名稱,而不是無縫的URL(請注意,s3端點將是http://s3-aws-region.amazonaws.com/bucket )
如果你正在使用boto2
from boto.s3.connection import S3Connection
AWS_KEY = 'MY_KEY'
AWS_SECRET = 'MY_SECRET'
aws_connection = S3Connection(AWS_KEY, AWS_SECRET)
bucket = aws_connection.get_bucket('bucket_name', validate=False)
for file_key in bucket.list():
print file_key.name
如果你正在使用boto3
import boto3
s3 = boto3.resource('s3')
bucket = s3.Bucket('name')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.