我需要访问Google drive上存储的数据。 每次我需要大小上传数据时训练模型。是否有其他有效的方法可以直接访问数据而不每次上传?
从Google Drive提取ZIP文件的最小方法
from google.colab import drive
drive.mount('/content/gdrive')
在新选项卡中打开链接 ->您将获得一个代码 - 复制回到提示符中,您现在可以访问Google Drive检查:
!unzip "/content/gdrive/My Drive/file_name.zip"
首先您安装和导入库
!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驱动器
auth.authenticate_user()
gauth = GoogleAuth()
gauth.credentials = GoogleCredentials.get_application_default()
drive = GoogleDrive(gauth)
然后,您从Google Drive下载文件your_data.zip到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
。
以下代码来自此博客文章:https://medium.com/deep-learning-turkey/google-colab-free-gpu-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驱动器安装到本地文件夹:
!mkdir -p drive
!google-drive-ocamlfuse drive