Leo*_*Rai 50 python shared-directory google-colaboratory flysystem-google-drive
我想访问 Google Drive 的“与我共享”目录中的文件。
在 Colab python notebook 中,以下命令:
import os
from google.colab import drive
drive.mount('/content/drive')
!ls "/content/drive/My Drive"
Run Code Online (Sandbox Code Playgroud)
然而,适用于“我的驱动器”目录
!ls "/content/drive/My Drive"
Run Code Online (Sandbox Code Playgroud)
失败
FileNotFoundError: [Errno 2] 没有这样的文件或目录:
我知道我可以手动将文件夹添加到我的驱动器并继续(如此处所述),但我想直接访问共享文件夹,例如我可能需要自动处理文件与我实时分享。
我也知道“OneDrive”等其他云平台存在相同/类似的问题。
问题是:
Bob*_*ith 33
RE:是否有解决方法 -
在 Web UI 中加载您的共享文件,右键单击感兴趣的目录,然后选择“添加到我的驱动器”。然后,该文件夹将/content/drive/My Drive如您所愿地出现。
就上下文而言,Drive 不像一个普通的文件系统:文件和目录可以有多个父目录,因此出现在您的文件列表和原始所有者中。
RE:其他用户是否可以访问云端硬盘文件?——
不,笔记本是 Drive 中的一个不同对象,具有不同的 Drive 权限。
小智 27
另一种解决方法是转到 Google Drive,右键单击相关文件夹,然后单击“将快捷方式添加到 Drive”。这将允许您从驱动器访问该文件夹!
die*_*rez 16
我通过添加 main/top 文件夹作为我的驱动器的快捷方式来解决,然后我使用了像你这样的代码
我的情况:
我想从与我共享的文件夹中的文件夹中加载一个 csv 文件,因此在我的 gdrive 中将位于“与我共享/folder_0/folder_1/file.csv”
所以我去了 folder_0 右下角点击“添加快捷方式到驱动器”-->“我的驱动器”-->“添加快捷方式”。现在整个 folder_0 应该作为快捷方式添加到您的驱动器中。
最后在 colab nb 中:
# Mount data from drive
from google.colab import drive
drive.mount('/content/drive')
pandas.read_csv("/content/drive/My Drive/folder_0/folder_1/file.csv")
Run Code Online (Sandbox Code Playgroud)
在我的例子中是一个加载在 Pandas 中的 csv 文件,但这里重要的是 path "/content/drive/My Drive/folder_0/folder_1/file.csv", where"/content/drive/My Drive/"总是这样的,并且"folder_0/folder_1/file.csv"是必须等于你刚刚添加的快捷路径的部分
小智 15
为了访问 Google Colab 中与您共享的文件夹或文件,您必须:
from google.colab import drive
drive.mount("/content/gdrive")
Run Code Online (Sandbox Code Playgroud)
dataset_dir = '/content/gdrive/My Drive/Dataset'
Run Code Online (Sandbox Code Playgroud)
小智 6
如果您想将文件从共享目录硬复制到您自己的驱动器,我按如下操作:
“新快捷方式”->/gdrive/.shortcut-targets-by-id/dffdffxxxxxxxxxx/[shared folder]
我将共享文件夹的内容复制到本地新创建的目录中
cp -rp '/gdrive/.shortcut-targets-by-id/dffdffxxxxxxxxxx/[shared folder]/*。
它工作得很好。
import os
from google.colab import drive
drive.mount('/content/drive',force_remount=True)
os.chdir("/content/drive/.shortcut-targets-byid/10xasdbasbdiluabsdiubiuadWEWEdaq/SHAREDFOLDER")
Run Code Online (Sandbox Code Playgroud)
现在相同的代码将适用于所有团队(所有者需要与团队共享共享文件夹)
找到了与您一起访问共享目录内容的解决方案
从您的 Google 云端硬盘转到与我共享。
找到目录,右键添加快捷方式然后指定路径获取保存快捷方式
安装驱动器
from google.colab import drive
drive.mount('/content/drive',force_remount=True)
import os
os.chdir("/content/drive/My Drive")
并转到您指定的快捷方式位置并键入
ls
Run Code Online (Sandbox Code Playgroud)
您可以看到快捷方式并通过以下方式访问它 cd <directory>
您可以创建从“与我共享”文件到您的云端硬盘的快捷方式,这对我有用:
Steps