必须有一种简单的方法来获得文件大小(密钥大小),而不需要拖出整个文件。我可以在AWS S3浏览器的属性中看到它。我想我可以把它从“HEAD”请求的“Content-length”头中去掉。但我不想把怎么和博托联系起来。如果你发布了一个链接,指向一些比standard boto docs中更全面的例子,那就更值得称赞了。
编辑:所以下面的代码似乎起到了作用(尽管从源代码的角度来看,我不完全确定)
bk = conn.get_bucket('my_bucket_name')
ky = boto.s3.key.Key(bk)
ky.open_read() ## This sends a GET request.
print ky.size
现在,我将把这个问题留给评论、更好的解决方案或指向示例的指针。
在boto3中:
s3.head_object
还执行HEAD请求以检索有关对象的元数据:这将起作用:
lookup方法只是在bucket上对keyname执行HEAD请求,因此它将返回密钥的所有header(包括内容长度),但不会传输密钥的任何实际内容。
S3 tutorial提到这一点,但不是很明确,也不是在这个确切的上下文中。我将添加一个关于此的部分,以帮助您更容易找到它。
注意:对于像
http://boto.cloudhackers.com/s3_tut.html
这样返回404的旧链接,在".com"
:http://boto.cloudhackers.com/en/latest/s3_tut.html
之后添加"/en/latest"
。(有人需要探索mod_rewrite…)相关问题 更多 >
编程相关推荐