@newPsevdonim
Python разработчик

Как получить список идентификаторов файлов каталога Google диска?

Я пытаюсь скачать файлы из конкретной папки google drive. Папку у меня не получилось скачать на прямую, но получил ошибку о том, что так скачивать можно только бинарные файлы. Тогда я пытался получить id файлов конкретной папки и циклом уже скачивать их скачивать. Вот код который я пытался использовать для получения id файлов папки:

def make_conect():
    CLIEN_SECRET_FILE = 'client_secret_844464197570-vh4is72q90s1qmoc2pbgmk8r9vlhv61m.apps.googleusercontent.com.json'
    API_NAME = 'drive'
    API_VERSION = 'v3'
    SCOPES = ['https://www.googleapis.com/auth/drive']
    service = Create_Service(CLIEN_SECRET_FILE, API_NAME, API_VERSION, SCOPES)
    return service
service = make_conect()


file_list = service.ListFile(
{'q': "'1R6eT6NE19_9LshSK3FsIHMVY6KOkhrG2' in parents"}).GetList()


Ошибка, которую я получаю:

Traceback (most recent call last):
File "D:\pythonProject1\google.py", line 148, in <module>
file_list = service.ListFile(
AttributeError: 'Resource' object has no attribute 'ListFile'


как я могу это исправить или загрузить файлы из определенной папки?
  • Вопрос задан
  • 293 просмотра
Решения вопроса 1
oshliaer
@oshliaer
Google Products Expert
Для Google Drive API v3 и оригинальной клиентской библиотеки верно

#!/usr/bin/python
# -*- coding: utf-8 -*-
page_token = None
while True:
    response = \
        drive_service.files().list(q="'1R6eT6NE19_9LshSK3FsIHMVY6KOkhrG2' in parents"
                                   , spaces='drive',
                                   fields='nextPageToken, files(id, name)'
                                   , pageToken=page_token).execute()
    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
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы