Colaboratory:我可以访问我的 Google 云端硬盘文件夹和文件吗?
Posted
技术标签:
【中文标题】Colaboratory:我可以访问我的 Google 云端硬盘文件夹和文件吗?【英文标题】:Colaboratory: Can I access to my Google drive folder and file? 【发布时间】:2018-05-24 10:57:56 【问题描述】:Google Colaboratory 真的很酷,但如果我可以访问我所有的 google drive 文件,而不使用标准的 google drive API,它会更有用。
这可能而且容易吗?以及如何?
【问题讨论】:
您是否找到了一种直接在 Google 云端硬盘中访问文件/文件夹的简便方法?我还发现这篇文章是在你的这篇文章之后发布的:***.com/questions/48376580/…,但我还不清楚。 【参考方案1】:以下是使用 FUSE Drive 界面访问您的 Drive 文件(如本地文件)的示例: https://colab.research.google.com/notebook#fileId=1srw_HFWQ2SMgmWIawucXfusGzrj1_U0q
简而言之:
# Load the Drive helper and mount
from google.colab import drive
drive.mount('/content/drive')
执行上述代码后,您的云端硬盘文件将出现在 /content/drive/My Drive
中。
我猜您还发现了捆绑的示例 I/O 笔记本,其中还展示了如何使用 Python API 来访问文件。 (这需要更少的配置。) https://colab.research.google.com/notebook#fileId=/v2/external/notebooks/io.ipynb&scrollTo=c2W5A2px3doP
【讨论】:
不确定如何使用它来“映射”文件夹。想象一下,我正在运行一个需要遍历该文件夹中所有文件的 colab 笔记本的文件夹中有数千个单独的文件。 我已成功将 Colab Notebooks 文件夹中的文件映射为 (a) !cat drive/'Colab Notebooks'/hobbit.txt 和 (b) textRDD = spark.sparkContext.textFile("驱动器/Colab Notebooks/hobbit.txt")【参考方案2】:要将您的 Google 驱动器安装到 Colab:
from google.colab import drive
drive.mount('/content/drive')
然后将 cd
转到 Google 驱动器中的任何目录:
import os
os.chdir("drive/My Drive/<your-folder>")
并列出 Colab 正在处理的目录中的所有项目(以确保它是正确的目录):
!ls
【讨论】:
这对我有用,似乎是所有答案中最简单的。 这个答案是最好的!谢谢~ 谢谢哥们!!! :)【参考方案3】:请按照 colab notebook 中的 3 个简单步骤访问 google drive 中的文件夹或文件,
步骤:1 运行这个 sn-p
!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
在此步骤中,您将被要求两次单击链接以允许访问您的驱动器, 在每一步都会生成代码:(例如:4/AACN9EZG2AU0dRsV0BupjAc107ugSvT_pmr4YPElX7VkoWru6mNmqc8)。粘贴此代码并点击进入。
步骤:2创建目录
!mkdir -p drive
!google-drive-ocamlfuse drive
步骤:3访问您的文件
import pandas as pd
trainDf = pd.read_csv("drive/app/Sample/train.csv");//Here is your file
【讨论】:
【参考方案4】:成功运行 Drive FUSE 程序后,您可以使用命令访问您的驱动器 /content/drive
import os
os.chdir("/content/drive/")
!ls
【讨论】:
【参考方案5】:是的,你可以这样做。
按照以下步骤操作。
运行以下代码并完成认证
!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
**运行以下代码**
!mkdir -p drive
!google-drive-ocamlfuse drive
**导入文件到笔记本**
import pandas as pd
pd.read_csv("drive/Colab_Notebooks/4k_without_spcl.csv")
Colab_Notebooks 是谷歌驱动器中的文件夹
【讨论】:
重复答案。 是否可以使用这种方法将文件写入谷歌驱动器? 是的,您可以使用 pandas.to_csv 方法将数据框写入 csv。 如果你的代码中有一个名为 df 的数据框,那么只需 df.to_csv("drive/urfolder/data.csv")【参考方案6】:按照以下步骤操作:-
-
直接进入文件部分,即右侧的第三个图标
点击第三个图标,上面有 google drive 登录。
额外的代码块将自动添加到您的笔记本中
运行该块,您将在运行时终端中获得一个链接
点击它会将您定向到 google 的登录 ID
点击您要链接的 google 驱动器的 ID
按 OK 将出现在下一页
复制下一页的代码并粘贴
它在您的 google Colab 运行时终端中
将“驱动器”文件夹添加到文件部分后,您可以通过它访问它
import os
folder = os.path.join('/content/drive/My Drive/foldername')
【讨论】:
以上是关于Colaboratory:我可以访问我的 Google 云端硬盘文件夹和文件吗?的主要内容,如果未能解决你的问题,请参考以下文章
使用本地 GPU 的 Google Colaboratory 本地运行时
在存储在谷歌驱动器中的谷歌 Colaboratory 中导入 zip 文件