Как получить идентификатор документа, зная имя файла?

Я пытаюсь получить идентификатор файла, который я создал, потому что я хочу переместить его в другую папку. Это мой текущий код, пытающийся получить идентификатор:

@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: объект «Ресурс» не имеет атрибута «файлы». Любая помощь? Код перепрофилирован из здесь (самый высокий ответ). Любая помощь?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
0
26
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Лучший способ получить идентификатор файла для файла — использовать метод file.list и параметр q.

response = drive_service.files().list(q = "name='filename'",
                                      fields='files(id, name)'
                                      ).execute()

Ответ будет содержать идентификатор файла.

Если вы вставили файл со своим приложением, вы должны знать, что при создании файла вы можете напрямую указать каталог, в котором создается файл, через метаданные.

Также ответ, возвращаемый из file.create, вернет идентификатор файла, поэтому его не нужно будет искать.

Ошибка, которую я получаю, заключается в том, что у drive_id нет файлов атрибутов. Ошибка сохраняется после реализации этого.

Westsi 31.03.2022 18:26

Я добавил .files() туда, где не должен был, и теперь все работает, спасибо!

Westsi 31.03.2022 18:35

Если ответ помог вам не забыть принять его, это также улучшит вашу репутацию.

DaImTo 31.03.2022 19:03

Другие вопросы по теме