在google colaborary中导入存储在google dri中的zip文件

2024-04-20 09:16:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要以.zip格式访问存储在google驱动器上的数据到google协作库中。 至于每次需要上传大数据的时候都要对模型进行训练,有没有其他有效的方法可以直接访问数据而不必每次上传?


Tags: 数据方法格式googlezip驱动器对模型
3条回答

首先安装并导入库

!pip install -U -q PyDrive
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
from google.colab import auth
from oauth2client.client import GoogleCredentials

然后你验证自己并连接到Google Drive

auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)

然后将文件your_data.zip从Google Drive下载到Colab。

fid = drive.ListFile({'q':"title='your_data.zip'"}).GetList()[0]['id']
f = drive.CreateFile({'id': fid})
f.GetContentFile('your_data.zip')

从这里你可以解压他们做任何你需要的训练。

您可以使用google-drive-ocamlfuse将google drive装载到colab实例。

以下代码来自此博客文章:https://medium.com/deep-learning-turkey/google-colab-free-gpu-tutorial-e113627b9f5d

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}

上面的代码将显示授权URL并请求验证代码。

提供代码后,应该可以将google drive装载到本地文件夹:

!mkdir -p drive
!google-drive-ocamlfuse drive

从google驱动器中提取zip文件的一种最简单的方法

from google.colab import drive
drive.mount('/content/gdrive')

在新选项卡中打开链接->;您将得到一个代码-复制回您现在可以访问google驱动器检查的提示:

!unzip "/content/gdrive/My Drive/file_name.zip"

相关问题 更多 >