Google colab 直接使用 Os.listdir 访问机器的本地驱动器
Google colab access Machine's local drives directly using Os.listdir
我是 google colab 的新手,我正在弄清楚 google colab 是否能够直接访问我计算机的 cdrive 上的文件。
import os
path = 'C:\Users\guest\Desktop\'
for file in os.listdir(path):
print(file)
出现的错误信息是 [Errno 2] No such file or directory: 'C:\Users\zhuan.lim\Desktop\script tools\Python Scripts\'
我在网上搜索了一些例子说要先上传文件使用:
from google.colab import files
uploaded = files.upload()
但是,google colab 是否有其他方法可以直接从我的驱动器中读取数据?
提前致谢。
不行,那files.upload()
也没有别的办法了,因为就是。但我认为您正在寻找一种更加用户友好的方式来获取文件。您可以将文件拖放到 Google Drive,然后将其安装到您的Google 通过在单元格中插入以下行并执行它来进行 Colab 会话:
from google.colab import drive
drive.mount('/content/gdrive')
它会提示您前往 URL 进行身份验证。单击 URL 并允许 Google Colab 访问您的 Google Drive 文件后,您可以访问 Google Drive 文件。更详细的解释在这里:
解决方案
您基本上可以通过三种方式让 Google Colab 访问您计算机上的文件:
- 将文件上传到 Google Colab。
from google.colab import files
uploaded = files.upload()
- 将您的文件上传到您的 Google 云端硬盘帐户,然后在 Colab 上安装 Google 云端硬盘。根据我的经验,这是最方便的方法。另外,请注意,这允许您读取和写入 Google 驱动器(就像它是本地驱动器一样)。
from google.colab import drive
drive.mount('/content/gdrive')
!ls ./content/gdrive
加载后,单击左侧窗格中的 文件 以访问 file-structure,如以下屏幕截图所示。
Note: Alternatively, click on Files >> Mount Drive and this will insert the code-snippet to mount Google Drive into your Colab Notebook. Once you run that cell, you will see GDrive getting mounted.
- 启动本地运行时然后访问它。在这种情况下,colab 使用您的本地资源,并且它也可以访问本地文件。请在启动此选项之前阅读安全性 concerns/warning。我还没有亲自尝试过,你只能靠自己了。
我将在下面解释选项#3。
将 Colab 连接到本地运行时
Colab 让您可以连接到本地运行时。如果您已经按照 here 的说明安装了 jupyter_http_over_ws
,您应该能够只提供用于启动本地运行时并从 colab 连接到它的端口。
第一步
单击重新连接,然后单击select“连接到本地运行时”。 (colab 的右上角)。
第 2 步
点击超链接:these instructions,在pop-up如下图(步骤3),安装jupyter_http_over_ws
,如果尚未安装。
- 安装并启用
jupyter_http_over_ws
jupyter 扩展 (one-time).
pip install jupyter_http_over_ws
jupyter serverextension enable --py jupyter_http_over_ws
- 启动服务器并验证.
新笔记本服务器正常启动,但您需要设置一个标志以明确信任来自 Colaboratory 前端的 WebSocket 连接。
jupyter notebook \
--NotebookApp.allow_origin='https://colab.research.google.com' \
--port=8888 \
--NotebookApp.port_retries=0
有关更多详细信息,我鼓励您查看 these instructions。
第 3 步
提供用于启动本地运行时(本地计算机上的 jupyter notebook)的正确端口号(例如 8888)。
我是 google colab 的新手,我正在弄清楚 google colab 是否能够直接访问我计算机的 cdrive 上的文件。
import os
path = 'C:\Users\guest\Desktop\'
for file in os.listdir(path):
print(file)
出现的错误信息是 [Errno 2] No such file or directory: 'C:\Users\zhuan.lim\Desktop\script tools\Python Scripts\'
我在网上搜索了一些例子说要先上传文件使用:
from google.colab import files
uploaded = files.upload()
但是,google colab 是否有其他方法可以直接从我的驱动器中读取数据?
提前致谢。
不行,那files.upload()
也没有别的办法了,因为就是。但我认为您正在寻找一种更加用户友好的方式来获取文件。您可以将文件拖放到 Google Drive,然后将其安装到您的Google 通过在单元格中插入以下行并执行它来进行 Colab 会话:
from google.colab import drive
drive.mount('/content/gdrive')
它会提示您前往 URL 进行身份验证。单击 URL 并允许 Google Colab 访问您的 Google Drive 文件后,您可以访问 Google Drive 文件。更详细的解释在这里:
解决方案
您基本上可以通过三种方式让 Google Colab 访问您计算机上的文件:
- 将文件上传到 Google Colab。
from google.colab import files
uploaded = files.upload()
- 将您的文件上传到您的 Google 云端硬盘帐户,然后在 Colab 上安装 Google 云端硬盘。根据我的经验,这是最方便的方法。另外,请注意,这允许您读取和写入 Google 驱动器(就像它是本地驱动器一样)。
from google.colab import drive
drive.mount('/content/gdrive')
!ls ./content/gdrive
加载后,单击左侧窗格中的 文件 以访问 file-structure,如以下屏幕截图所示。
Note: Alternatively, click on Files >> Mount Drive and this will insert the code-snippet to mount Google Drive into your Colab Notebook. Once you run that cell, you will see GDrive getting mounted.
- 启动本地运行时然后访问它。在这种情况下,colab 使用您的本地资源,并且它也可以访问本地文件。请在启动此选项之前阅读安全性 concerns/warning。我还没有亲自尝试过,你只能靠自己了。
我将在下面解释选项#3。
将 Colab 连接到本地运行时
Colab 让您可以连接到本地运行时。如果您已经按照 here 的说明安装了 jupyter_http_over_ws
,您应该能够只提供用于启动本地运行时并从 colab 连接到它的端口。
第一步
单击重新连接,然后单击select“连接到本地运行时”。 (colab 的右上角)。
第 2 步
点击超链接:these instructions,在pop-up如下图(步骤3),安装jupyter_http_over_ws
,如果尚未安装。
- 安装并启用
jupyter_http_over_ws
jupyter 扩展 (one-time).
pip install jupyter_http_over_ws
jupyter serverextension enable --py jupyter_http_over_ws
- 启动服务器并验证.
新笔记本服务器正常启动,但您需要设置一个标志以明确信任来自 Colaboratory 前端的 WebSocket 连接。
jupyter notebook \
--NotebookApp.allow_origin='https://colab.research.google.com' \
--port=8888 \
--NotebookApp.port_retries=0
有关更多详细信息,我鼓励您查看 these instructions。
第 3 步
提供用于启动本地运行时(本地计算机上的 jupyter notebook)的正确端口号(例如 8888)。