[英]List all files in folder in shared Google Team Drive using PyDrive
[英]Manage files from public Google Drive URL using PyDrive
我正在使用PyDrive QuickStart脚本列出我的Google Drive文件。
码:
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)
我能够正常列出我的文件,但是我需要从我已经过身份验证的GoogleDrive帐户列出并管理来自另一个公共驱动器URL(不是我个人认证的驱动器)的文件,就像我使用请求lib一样。 有什么想法怎么做?
您需要获取文件夹ID。 您可以在文件夹的URL中找到ID。 一个例子是: https://drive.google.com/open?id=0B-schRXnDFZeX0t0RnhQVXXXXXX
: https://drive.google.com/open?id=0B-schRXnDFZeX0t0RnhQVXXXXXX
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()
如果这不起作用,您可能需要在浏览器中打开时使用共享文件夹右上角的“添加到云端硬盘”按钮将远程文件夹添加到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删除/删除文件可以使用GitHub提供的更新版本完成: pip install instructions , Delete / Trash / UnTrash documentation
最后,有一个功能请求上传到文件夹,如2.1所述,并列出文件夹的文件 ,如2所述。 - 如果您发现上述不起作用,您可以将此作为问题/功能请求添加到存储库。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.