我正在尝试自动从 Google Drive 共享文件夹下载文件。文件夹的内容每天都在变化。该文件夹将共享给拥有该文件夹链接的任何人。
我的问题是,除非我在 Google Drive 中打开新文件,否则查询不会返回我尚未打开的新文件。
folder_id = 'xxxx...xxx'
results = drive_service.files().list(q=f"parents in '{folder_id}' and trashed = false", fields="nextPageToken, files(id, name)").execute()
有没有办法列出我尚未打开的共享文件夹中的文件?我试图否定 sharedWithMe 字段,但它不起作用。
最佳答案
是的,有,但您需要指定要在搜索中包含共享文件夹
这可以通过设置 includeItemsFromAllDrives
来实现和 supportsAllDrives
至 true
在python中你可以用
folder_id = 'xxx...xxx'
结果 = drive_service.files().list(supportsAllDrives=True, includeItemsFromAllDrives=True, q="parents in '{folder_id}' andtrashed = false", fields = "nextPageToken, files(id, name)").execute( )
更新
请注意 shared with anyone with a link
意味着在您打开文件之前,它不会明确与您共享,因此不会显示为文件列表的一部分。如果您想更改此设置,您需要要求所有者将您指定为文件夹的查看者。
关于python - Google Drive API - 列出我尚未访问的共享文件夹中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62414423/