在 google colab 中从共享 google 驱动器 link 下载数据

Downloading data from a shared google drive link in google colab

我想从使用 google colab 的人共享的 google 驱动器 link 下载数据。我是 colab 的新用户,我不知道该怎么做。 link 是

x_train: https://drive.google.com/open?id=1cUaIEd9-MLJHFGjLz5QziNvfBtYygplX

y_train: https://drive.google.com/open?id=1hv24Ufiio9rBeSqgnNoM3dr5sVGwOmBy

x_test: https://drive.google.com/open?id=1AH9lKHT5P2oQLz8SGMRPWs_M9wIM2ZRH

y_test: https://drive.google.com/open?id=1i4_azocSDuU3TcDf3OSHO1vF0D5-xMU6

提前致谢

如果文件是公开共享的,您可以使用 gdown

!gdown --id 1cUaIEd9-MLJHFGjLz5QziNvfBtYygplX

如果只分享给你,你需要使用pydrive

# Install the PyDrive wrapper & import libraries.
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

# Authenticate and create the PyDrive client.
auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

file_id = '1cUaIEd9-MLJHFGjLz5QziNvfBtYygplX'
downloaded = drive.CreateFile({'id':file_id})
downloaded.FetchMetadata(fetch_all=True)
downloaded.GetContentFile(downloaded.metadata['title'])

如果他们共享一个文件夹,则该文件夹太长,所以我在我的库中将其缩短。

!pip install kora
from kora import drive
drive.download_folder('1HvIeNhqtFVllXFWzH5NawDdnIfgGDwCK')

如果您有 link 某人在 Google 驱动器上的公开共享文件,您可以在 4 次鼠标点击后完成此操作:

  1. 在您的 Google 驱动器中创建此文件的快捷方式(右键单击 文件 -> “将快捷方式添加到磁盘”)
  2. 在 Colab 笔记本中安装您的 Google 驱动器(单击按钮:“文件” -> “安装驱动器”
  3. 现在您可以通过 !unzip/np.load/...
  4. 的快捷方式访问此文件

一个很好的问题,我已经研究了一段时间了。 most 无缝/友好的工作流程正在使用 gdown.

目前 Colab 有一个稍旧的版本安装,它不允许完整的功能,并且安装在 pyton2.7 而不是 Colab 系统 python 上。因此遵循 terminal/underlining os 通过 `!` 方法,`!pip 安装`:
!pip uninstall gdown -y && pip install gdown
!gdown -V

然后你可以通过另一个 ! (方法 1) 使用 gdown 或导入 gdown (方法 2) 如果你想在代码中使用它:

Method 1 for whole shared folders/directories:

!gdown --folder https://drive.google.com/drive/folders/sdsldkfj...somefileid.. -O /some_parent_directory/some_child_directory

对于文件:

!gdown https://drive.google.com/drive/folders/sdsldkfj...somefileid.. -O /some_parent_directory/some_child_directory

Method 2 Using down via importing works as follows:

import gdown
url = 'https://drive.google.com/uc?id=0B9P1L--7Wd2vNm9zMTJWOGxobkU'
output = '20150428_collected_images.tgz'
gdown.download(url, output, quiet=False)

在这两种情况下粘贴您的 google 驱动器 file/directory url。

希望对您有所帮助<^_^>