如何从Colaboratory下载大文件(如模型的重量)?

时间:2018-03-22 12:08:25

标签: python-3.x tensorflow gpu google-colaboratory

我尝试从Google Colaboratory下载小文件。它们很容易下载,但每当我尝试下载大尺寸的文件时都会显示错误?下载大文件的方法是什么?

3 个答案:

答案 0 :(得分:5)

这就是我处理这个问题的方法:

from google.colab import auth
from googleapiclient.http import MediaFileUpload
from googleapiclient.discovery import build

auth.authenticate_user()

然后点击该链接,授权Google云端硬盘并将代码粘贴到笔记本中。

drive_service = build('drive', 'v3')

def save_file_to_drive(name, path):
    file_metadata = {
      'name': name,
      'mimeType': 'application/octet-stream'
     }

     media = MediaFileUpload(path, 
                    mimetype='application/octet-stream',
                    resumable=True)

     created = drive_service.files().create(body=file_metadata,
                                   media_body=media,
                                   fields='id').execute()

     print('File ID: {}'.format(created.get('id')))

     return created

然后:

save_file_to_drive(destination_name, path_to_file)

这会将所有文件保存到您的Google云端硬盘,您可以在此处下载或同步它们或其他任何文件。

答案 1 :(得分:0)

Google colab不允许您使用files.download()下载大型文件。但您可以使用以下方法之一来访问它:

  1. 最简单的方法是使用github提交并推送文件,然后将其克隆到本地计算机。
  2. 您可以将google-drive挂载到您的colab实例并在那里写入文件。

答案 2 :(得分:0)

如果您创建了一个大型zip文件,例如my_archive.zip,则可以按以下方式下载它:

  1. 从Google colab笔记本电脑上安装Google驱动器。你会 要求输入验证码。
from google.colab import drive
drive.mount('/content/gdrive',force_remount=True)
  1. 将zip文件复制到您的任何Google驱动器文件夹(例如,下载文件夹)中。您也可以将文件复制到根文件夹“我的云端硬盘”上。
!cp my_archive.zip '/content/gdrive/My Drive/downloads/'
!ls -lt '/content/gdrive/My Drive/downloads/' 

最后,您可以将zip文件从Google驱动器下载到本地计算机。