Как найти идентификатор папки по пути в Google Drive API? - PullRequest
2 голосов
/ 04 апреля 2020

Я могу найти идентификатор папки Google Drive, выполнив поиск по ее имени, но как я могу найти идентификатор папки, выполнив поиск по ее пути?

Я ищу на диске, который имеет несколько папок с то же имя, но разные пути, поэтому я хочу убедиться, что я нахожу правильный идентификатор папки.

results = service.files().list(q="name='folder_name'",
        pageSize=10, fields="nextPageToken, files(id, name)",
        supportsAllDrives=True, driveId='driveId', includeItemsFromAllDrives=True, corpora='drive').execute()

Приведенное выше возвращает несколько папок. Я не вижу параметр запроса для пути.

Пример структуры папок:

Food
   \Vegetables
      \Folder 1
        Item 1
        Item 2
        Item 3
      \Folder 2
        Item 1
   \Fruit
      \Folder 1
   \Protein

1 Ответ

1 голос
/ 05 апреля 2020

Как насчет этого ответа?

Проблема:

К сожалению, на данном этапе нет способов прямого получения файлов и папок в указанной папке c с использованием папки. имя. Таким образом, в вашем случае необходимо использовать обходной путь.

Обходное решение:

Я хотел бы предложить обходной путь следующим образом.

Из структуры вашей папки примера я может понять, что вы хотите получить список файлов в папках Folder 1 и Folder 2 в Vegetables. В этом случае, как насчет использования следующего поискового запроса?

q="name='Folder 1' and '### folderId of Vegetables ###' in parents"

В этом случае, пожалуйста, получите идентификатор папки Vegetables. По вышеописанному измененному поисковому запросу можно получить идентификатор папки Folder 1 в папке Vegetables.

Конечно, вы также можете получить идентификатор папки Vegetables с помощью сценария.

Примечание:

  • В этом ответе предполагается, что вы уже смогли получить метаданные файла с помощью Drive API.

Ссылки:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...