我刚刚注册了一个S3帐户,安装了boto,现在想尝试上传文件。我将此作为参考 - http://aws.amazon.com/articles/3998
我很惊讶您需要将凭据作为明文存储在文件中,但这就是我正在尝试做的事情,但是一开始我不会输入我的密码并期望得到错误。
所以我按照指示在python中执行了以下操作:
导入boto
s3 = boto.connect_s3()
S3
S3Connection:s3.amazonaws.com
并且命令成功,但我预计会因为我的凭据错误而导致错误,但是这可能只是一个连接对象,并且在创建存储桶时应该发生真正的错误。所以我试过这个:
bucket = s3.create_bucket('1234567mjs7654321')
并且命令已经挂了超过10分钟。
我必须相信有一些非常基本的我做错了但不知道它可能是什么。
这是启用调试的结果:
s3.create_bucket('1234567mjs7654321')
2013-01-11 17:58:17,765 foo [DEBUG]:path=/
2013-01-11 17:58:17,766 foo [DEBUG]:auth_path=/1234567mjs7654321/
2013-01-11 17:58:17,766 foo [DEBUG]:Method: PUT
2013-01-11 17:58:17,766 foo [DEBUG]:Path: /
2013-01-11 17:58:17,766 foo [DEBUG]:Data:
2013-01-11 17:58:17,766 foo [DEBUG]:Headers: {}
2013-01-11 17:58:17,766 foo [DEBUG]:Host: 1234567mjs7654321.s3.amazonaws.com
2013-01-11 17:58:17,766 foo [DEBUG]:establishing HTTPS connection: host=1234567mjs7654321.s3.amazonaws.com, kwargs={}
2013-01-11 17:58:17,766 foo [DEBUG]:Token: None
2013-01-11 17:58:17,766 foo [DEBUG]:StringToSign:
PUT
答案 0 :(得分:0)
我无法想象为什么它会悬挂。我建议尝试将完整的调试日志记录到控制台,如下所示:
import boto
boto.set_stream_logger('foo')
s3 = boto.connect_s3(debug=2)
s3.create_bucket('1234567mjs7654321')
您应该会看到很多信息被丢弃到控制台,或许这将包含有关正在发生的事情的线索。
答案 1 :(得分:0)
解决!!!我的机器上存在访问问题,虽然我还不确定它是什么,但它确实可以在不同的系统上运行。我很失望它没有告诉我这件事。