将文件从 dropbox/drive 传输到 Google 云存储

Transfer files from dropbox/drive to Google cloud storage

我们计划实施一项功能,让客户可以在他们自己的 google 驱动器或保管箱帐户(在我们的应用程序中)和 select 他们想在我们的应用程序中使用的帐户中浏览他们的图像。然后,我们会将这些图像保存到我们的 Google 云存储 (GCS) 位置。

一个简单的方法是使用 OAuth 将客户的图像从 dropbox/drive 下载到我们的本地磁盘,然后将它们上传到我们的 GCS。

我想知道是否可以在 dropbox/drive 和 GCS 之间进行直接传输? GCS 确实为 S3 提供 transfer service。您还可以创建一个 URL 列表列表,但每个 URL 列表都需要可公开访问,这在我们的例子中似乎是不可能的。

关于如何实现这个功能,有没有更好的建议?谢谢

好吧,你可以流式传输文件,这样至少你不必将它们保存到本地磁盘,但除此之外,我认为你的解决方案是可行的。

流式传输的具体工作方式取决于您的语言,但基本上您下载文件并立即将其上传到 GCS,而无需将任何字节写入本地磁盘。

我 运行 在寻找将数据从 G 驱动器转移到 Google 云存储的方法时,我 运行 进入了你的问题。由于他们都在 Google 保护之下,所以我想他们应该能够无缝 upload/download。到目前为止,在我的搜索中,没有编程,答案是否定的。

对于您的问题,我没有确切的解决方案,因为这实际上取决于您拥有多少数据以及 uploading/downloading 的频率。不幸的是,没有直拍(即使是 Gdrive!)。但也许会考虑尝试 RESTful API 调用 Google 并与 Dropbox API 建立连接。希望这能有所帮助。

使用this recipe,可以使用Google Colab挂载Google Drive文件夹,然后使用gsutil从挂载的文件夹复制到存储桶,避免需要先将数据保存到本地磁盘。