我的 Amazon s3 上有 4000 张图片。现在我需要下载其中的 3000 个,这些内容由特定用户上传到我的本地。我怎样才能做到这一点。谢谢。
更新:
Url就是这样,它是公开的。http://s3.amazonaws.com/mybucket/photos/3/3acb36fc9a540e6543ad62b4a61f76bb.jpg
@photo = Photo.first
@photo.attachment.url #gives me the url
我尝试访问您的 URL,它似乎受到限制 - 尽管这没什么大不了的。
就像上面评论的海报一样,如果"3"与特定用户相关联,您需要做的就是获取该存储桶的完整内容列表,然后收集 URL 列表。然后你可以使用 ruby 或 wget/curl 将这些文件下载到你的机器上。
如果你想用一个工具浏览,我喜欢S3Hub(仅限Mac)。
这有帮助吗?如果您提供有关网址结构如何映射到用户的更多信息,我们将能够更好地为您提供帮助。
我在你上面的评论中看到它需要由user_id来完成。上传和用户之间有映射吗?
解决问题的真正关键是能够将用户与其许多上传(以及 S3 中的相应 URL)相关联。
这是一次性转移吗?它必须以编程方式完成吗?
您可以使用 GUI 工具,例如存储桶资源管理器或云莓浏览器。两者都提供免费版本。
假设"子文件夹"/3/
包含您感兴趣的特定用户的所有照片,您可以轻松过滤存储桶以显示该文件夹中的照片并将其下载到本地系统。
如果您要上传/下载大量数据,则可以使用 AWS 导入/导出。 您不是通过互联网执行上传/下载,而是向他们运送硬盘。 有固定费用加上每小时的象征性费用。 就像我说的,如果我们谈论的是大量的GB,那么这是一个有吸引力的选择。