Python Google Drive API未列出文件夹中的所有文件

时间:2018-08-26 23:43:55

标签: python google-drive-api google-api-python-client

我正在编写程序的一部分,要求我列出Google云端硬盘文件夹中的文件和文件夹。我目前正在使用以下代码:

page_token = None
while True:
    response = service.files().list(pageSize=1000,q="'folder_id' in parents",fields="nextPageToken, files(id, name)").execute()
    for file in response.get('files', []):
        print('Found file: %s (%s)' % (file.get('name'), file.get('id')))
    page_token = response.get('nextPageToken', None)
    if page_token is None:
        break

由于某种原因,即使添加其他文件/文件夹,我正在测试的一个文件夹也仅返回一个文件,而我尝试的其他所有上层folder_id都不会返回任何文件。我什至尝试删除正在返回的一个文件,当我再次调用该函数时,它仍然会返回。

1 个答案:

答案 0 :(得分:0)

如果您正在使用代表服务的服务帐户,则:

  1. 为服务帐户启用域范围的委派。步骤是另外的info

  2. 启用域范围委派后,使用服务/ Web应用程序与服务帐户的电子邮件地址Service account link共享要列出的所需文件夹,就像“ XXX ... XXX.iam” .gserviceaccount.com”。