当前位置: 首页 > 知识库问答 >
问题:

如何使用boto将文件上传到S3 bucket中的目录

郭元凯
2023-03-14

我想用Python在s3 bucket中复制一个文件。

共有1个答案

尹昂雄
2023-03-14

试试这个...

import boto
import boto.s3
import sys
from boto.s3.key import Key

AWS_ACCESS_KEY_ID = ''
AWS_SECRET_ACCESS_KEY = ''

bucket_name = AWS_ACCESS_KEY_ID.lower() + '-dump'
conn = boto.connect_s3(AWS_ACCESS_KEY_ID,
        AWS_SECRET_ACCESS_KEY)


bucket = conn.create_bucket(bucket_name,
    location=boto.s3.connection.Location.DEFAULT)

testfile = "replace this with an actual filename"
print 'Uploading %s to Amazon S3 bucket %s' % \
   (testfile, bucket_name)

def percent_cb(complete, total):
    sys.stdout.write('.')
    sys.stdout.flush()


k = Key(bucket)
k.key = 'my test file'
k.set_contents_from_filename(testfile,
    cb=percent_cb, num_cb=10)

[UPDATE]我不是一个Pytholist,所以感谢您关于导入语句的提示。另外,我不建议在您自己的源代码中放置凭据。如果您在AWS中运行此操作,请使用带有实例配置文件的IAM凭据(http://docs.AWS.amazon.com/IAM/latest/userguide/id_roles_use_switch-role-ec2_instance-profiles.html),并且为了在开发/测试环境中保持相同的行为,请使用AdRoll中的Hologram(https://github.com/AdRoll/Hologram)

 类似资料:
  • 问题内容: 我想使用python复制s3存储桶中的文件。 例如:我的存储桶名称=测试。在存储桶中,我有2个文件夹名称为“ dump”和“ input”。现在,我想使用python将文件从本地目录复制到S3“转储”文件夹…有人可以帮助我吗? 问题答案: 尝试这个… [更新]我不是pythonist,所以感谢您对import语句的注意。另外,我不建议将凭证放在您自己的源代码中。如果您在AWS内部运行此

  • 问题内容: 我知道如何以这种方式下载文件: 但是,当我尝试上传:时,该网址无效。有人告诉我: 我无法在主页上找到有关如何使用该函数的示例代码。这里有人知道如何使用它进行上传吗?如何设置上传文件路径的参数? 问题答案: 我花了一些时间对此进行试验,这就是我所发现的。 然后,我可以使用curl将文件放置到该URL上,如下所示: 这导致文件被上传到存储桶。因此,似乎有可能。您可能想看看是否可以计算con

  • 问题内容: 我正在将文件从S3复制到Cloudfiles,并且我想避免将文件写入磁盘。Python- Cloudfiles库有一个object.stream()调用,看起来像我需要的,但我在boto中找不到等效的调用。我希望我能够做类似的事情: boto是否可以做到这一点(或者我猜想是否还有其他s3库)? 问题答案: boto中的Key对象代表S3中的对象,可以像迭代器一样使用,因此您应该可以执行

  • 我在dropbox示例中没有看到任何有用的上传。 你能帮帮我吗?我在用Angularjs。

  • 问题内容: 我在Python网络环境中工作,我可以使用boto的key.set_contents_from_filename(path / to / file)将文件从文件系统上传到S3。但是,我想上传已经在网络上的图像(例如https://pbs.twimg.com/media/A9h_htACIAAaCf6.jpg:large)。 我是否应该以某种方式将映像下载到文件系统,然后照常使用boto

  • 这是我的uploadimg.jsp,当我单击Upload时,它会转到fileupload.java,上传的图像必须存储在我指定的文件夹AppImages中,我如何做到这一点?谢谢你的帮助。