首页 > 解决方案 > 如何使用 Python 在 Google Drive 上的文件夹中搜索文件

问题描述

我想从以下路径搜索文件夹中的文件,即文件:test-download/abc/test.txt。但是当尝试使用 Google API 时,它给了我单独的文件和文件夹名称,但我是如何知道“test.txt”来自“test-download/abc”的。试过下面的代码:

service = discovery.build('drive', 'v3', http=creds.authorize(Http()))
    page_token = None
    while True:
        response = service.files().list(q="mimeType='application/vnd.google-apps.folder' or mimeType='text/plain'",
                                              spaces='drive',
                                              fields='nextPageToken, files(id, name)',
                                              pageToken=page_token).execute()
        print(response)                                              
        for file in response.get('files', []):
            # Process change
            print('Found file: %s (%s)' % (file.get('name'), file.get('id')))

        page_token = response.get('nextPageToken', None)
        if page_token is None:
            break        

标签: python-3.xgoogle-drive-apigoogle-api-python-client

解决方案


您可以使用q 查询来指定父文件夹的 Id,例如

        response = service.files().list(q="'PASTE HERE THE PARENT FOLDER ID' in parents",
                                              spaces='drive',
                                              fields='nextPageToken, files(id, name)',
                                              pageToken=page_token).execute()

推荐阅读