Я пытаюсь получить идентификатор файла, который я создал, потому что я хочу переместить его в другую папку. Это мой текущий код, пытающийся получить идентификатор:
@app.route('/gdocs/movetofolder', methods=['GET', 'POST'])
def move_doc():
drive_id = google_drive.build_drive_api_v3()
file_id = drive_id.files().get(fileId='My Test Doc').execute()
print(type(file_id))
print(file_id[id])
return file_id
where
def build_drive_api_v3():
credentials = build_credentials()
return googleapiclient.discovery.build('drive', 'v3', credentials=credentials).files()
Получение учетных данных не является проблемой, поскольку у меня есть другая функция, которая использует учетные данные для загрузки файлов. Запуск фляжного сервера и переход к правильному URL-адресу дает мне AttributeError: объект «Ресурс» не имеет атрибута «файлы». Любая помощь? Код перепрофилирован из здесь (самый высокий ответ). Любая помощь?






Лучший способ получить идентификатор файла для файла — использовать метод file.list и параметр q.
response = drive_service.files().list(q = "name='filename'",
fields='files(id, name)'
).execute()
Ответ будет содержать идентификатор файла.
Если вы вставили файл со своим приложением, вы должны знать, что при создании файла вы можете напрямую указать каталог, в котором создается файл, через метаданные.
Также ответ, возвращаемый из file.create, вернет идентификатор файла, поэтому его не нужно будет искать.
Я добавил .files() туда, где не должен был, и теперь все работает, спасибо!
Если ответ помог вам не забыть принять его, это также улучшит вашу репутацию.
Ошибка, которую я получаю, заключается в том, что у drive_id нет файлов атрибутов. Ошибка сохраняется после реализации этого.