Colab和gdown,Google Drive中的文件夹到colab,停止工作,权限错误?

问题描述 投票:0回答:1

直到昨天,我的文件都在 Google Drive 中,我在 Colab 中使用以下命令下载包含所有文件的文件夹:

!gdown https://drive.google.com/drive/folders/1Ocm3YhQOqXepID60Hf5_L9uYnt8hAb4s -O /content/ --folder

今天出现以下错误:

“访问被拒绝,出现以下错误: 无法检索文件的公共链接。你可能需要改变 授予“知道链接的任何人”的权限,或者具有多次访问权限。 ”

知道该链接的任何人都可以访问该文件夹。我已经尝试了互联网上的几种形式的代码,但没有任何效果。

还有我的个人文件(不是文件夹),我直到昨天才下载,如下所示:

!gdown "1Pn1XNMYDPNzPoZ6MyeNnUiVGtrNEFDyQ"

现在只有在 id 旁边添加“&confirm=t”才有效:

!gdown "1Pn1XNMYDPNzPoZ6MyeNnUiVGtrNEFDyQ&confirm=t"

但是该文件夹我找不到从驱动器下载到Colab的方法。

python google-drive-api google-colaboratory
1个回答
0
投票

我在读取文件时遇到了类似的问题,这是我的代码似乎可以为我解决这个问题:

file_id = '<file_id>'
url = f'https://drive.google.com/uc?id={file_id}'

gdown.download(url, '<name of file>', quiet=False)

pre_df = pd.read_csv('<name of file>')

这适用于单个文件,但对于文件夹,您可能必须将其另存为 zip 并以这种方式下载:

file_id = 'zip_file_id'
url = f'https://drive.google.com/uc?id={file_id}'
gdown.download(url, 'my_folder.zip', quiet=False)

with zipfile.ZipFile('my_folder.zip', 'r') as zip_ref:
    zip_ref.extractall('my_folder')

这会将文件夹下载为文件,并将其解压,以便您可以访问其中的文件。

© www.soinside.com 2019 - 2024. All rights reserved.