使用boto在s3上传图像

时间:2010-11-18 06:23:06

标签: python file-upload amazon-s3 boto

这里我有一个图片网址。 filename是图片网址

def upload(filename, content)
    conn = S3Connection(aws_access_key, aws_secret_key)
    b = Bucket(conn, bucket_name)
    k = Key(b)
    k.key = filename..split('/')[::-1][0]
    k.set_metadata("Content-Type", 'images/jpeg')
    k.set_contents_from_string(content)
    k.set_acl("public-read")

它将内容上传到S3,但它显示错误:

  无法打开

/tmp/t.jpeg,因为关联的帮助应用程序不存在。更改首选项中的关联。

2 个答案:

答案 0 :(得分:5)

我很确定images / jpeg是一个错字。正确的mimetype是:

image/jpeg

答案 1 :(得分:2)

k.key = filename..split('/')[::-1][0]

这一行有一些语法错误。用。。。来代替 。

检查您尝试阅读的图像文件的文件权限。从错误消息中看起来像你,或者至少你的程序没有对该文件的读访问权。