从 AI Platform Notebook 装载 Google 驱动器

Mount Google Drive from AI Platform Notebook

有没有办法像 Google Colab 一样从 Google 的 AI Platform Notebook 挂载 Google My Drive?

谢谢, 周杰伦

是的,有。您可以使用 Python package gdrivefs 将 Google Drive 挂载到 AI Platform Notebook。您可以在此处的 PyPi 项目页面找到有关设置的确切信息:https://pypi.org/project/gdrivefs/.

要在 AI Platform Notebook 中安装,您需要在终端中安装它或在 Notebook 中使用 shell 命令。使用以下命令你应该能够做到这一点:

安装依赖项和 gdrivefs 包:

!sudo apt-get install -y build-essential python-dev
!pip install gdrivefs

使用第一个命令提供的 link 向您的 Google 驱动器进行身份验证,并将身份验证令牌传递给第二个命令:

!gdfstool auth_get_url
!gdfstool auth_write "xxx….”

装载并列出文件。您应该看到 Google 驱动器内容:

!gdfs -o allow_other default /mnt/gdrivefs
!ls /mnt/gdrivefs

现在您可以将挂载的文件用作本地文件了:

import pandas as pd
df = pd.read_csv('/mnt/gdrivefs/mydata.csv')
print(df)

如果我没记错的话,这个方法的性能不是很好。这至少适用于临时访问、小数据和将数据复制到更合适的位置。

要在 CoLab 中执行相同的操作,您只需要以下代码。它更简单,性能更高,但不幸的是 google.colab 在 AI Platform Notebook 中不起作用:

from google.colab import drive
drive.mount('/mnt/drive')

感谢@Veikko 的回答。我需要稍微修改一下。认证步骤后,我需要创建一个 local 挂载目录:

mkdir mnt/gdrivefs/

(如果我在 root 中创建它,稍后会出现 permissions/ownership 个错误)。接下来,我需要修改 /etc/fuse.conf 文件以允许非根用户指定挂载选项:

sudo nano /etc/fuse.conf 并取消注释行:user_allow_other

然后我 运行 最后的步骤(到本地 mnt/gdrivefs 目录)并且一切正常:

!gdfs -o allow_other default mnt/gdrivefs
!ls mnt/gdrivefs