使用 PyDrive 管理 public Google 驱动器 URL 中的文件
Manage files from public Google Drive URL using PyDrive
我正在使用 PyDrive QuickStart 脚本列出我的 Google 驱动器文件。
代码:
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
gauth = GoogleAuth()
gauth.LocalWebserverAuth()
drive = GoogleDrive(gauth)
file_list = drive.ListFile({'q': "'root' in parents and trashed=false"}).GetList()
print(file_list)
我可以正常列出我的文件,但我需要列出和管理来自另一个 public 驱动器 URL 的文件(这不是我的个人验证驱动器)来自我已经验证的Google驱动帐户就像我使用请求库一样。
有什么想法吗?
您需要获取文件夹 ID。您可以在文件夹的 URL 中找到 ID。一个例子是:
https://drive.google.com/open?id=0B-schRXnDFZeX0t0RnhQVXXXXXX
(id=
之后URL的部分)。
根据 ID 列出文件夹的内容。根据您的代码,您将 file_list = ...
替换为:
file_id = '<Your folder id here.>'
file_list = drive.ListFile({'q': "'%s' in parents and trashed=false" % file_id}).GetList()
如果这不起作用,您可能必须使用在浏览器中打开共享文件夹右上角的 "Add to Drive" 按钮将远程文件夹添加到您的 Google 驱动器。
2.1 在文件夹中创建文件可以这样完成:
file_object = drive.CreateFile({
"parents": [{"kind": "drive#fileLink",
"id": parent_id}],
'title': file_name,
# (Only!) If the new 'file' object is going be a folder:
'mimeType': "application/vnd.google-apps.folder"
})
file_object.Upload()
如果失败请检查您是否对该文件夹有写入权限。
2.2 Deleting/Trashing 可以使用 GitHub 提供的更新版本完成一个文件:pip install instructions, Delete/Trash/UnTrash documentation
最后,有一个 feature request to Upload to folders as described in 2.1, and listing files of a folder,如 2 中所述。- 如果您发现以上内容不起作用,您可以将其作为问题/功能请求添加到存储库中。
我正在使用 PyDrive QuickStart 脚本列出我的 Google 驱动器文件。
代码:
from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
gauth = GoogleAuth()
gauth.LocalWebserverAuth()
drive = GoogleDrive(gauth)
file_list = drive.ListFile({'q': "'root' in parents and trashed=false"}).GetList()
print(file_list)
我可以正常列出我的文件,但我需要列出和管理来自另一个 public 驱动器 URL 的文件(这不是我的个人验证驱动器)来自我已经验证的Google驱动帐户就像我使用请求库一样。 有什么想法吗?
您需要获取文件夹 ID。您可以在文件夹的 URL 中找到 ID。一个例子是:
https://drive.google.com/open?id=0B-schRXnDFZeX0t0RnhQVXXXXXX
(id=
之后URL的部分)。根据 ID 列出文件夹的内容。根据您的代码,您将
file_list = ...
替换为:file_id = '<Your folder id here.>' file_list = drive.ListFile({'q': "'%s' in parents and trashed=false" % file_id}).GetList()
如果这不起作用,您可能必须使用在浏览器中打开共享文件夹右上角的 "Add to Drive" 按钮将远程文件夹添加到您的 Google 驱动器。
2.1 在文件夹中创建文件可以这样完成:
file_object = drive.CreateFile({ "parents": [{"kind": "drive#fileLink", "id": parent_id}], 'title': file_name, # (Only!) If the new 'file' object is going be a folder: 'mimeType': "application/vnd.google-apps.folder" }) file_object.Upload()
如果失败请检查您是否对该文件夹有写入权限。
2.2 Deleting/Trashing 可以使用 GitHub 提供的更新版本完成一个文件:pip install instructions, Delete/Trash/UnTrash documentation
最后,有一个 feature request to Upload to folders as described in 2.1, and listing files of a folder,如 2 中所述。- 如果您发现以上内容不起作用,您可以将其作为问题/功能请求添加到存储库中。