Как удалить файлы в Google Drive API v3, клиент Python - PullRequest
2 голосов
/ 05 июня 2019

Мне нужно удалить файл с помощью Google Drive API V3.Хотя в V2 есть метод мусора, в V3 его нет.Вместо этого вам нужно изменить метаданные файла.

Я искал везде, но не смог найти ответ на этот вопрос.Я нашел пример для Android здесь в stackoverflow, но я не знаю, как перевести его на python: Google Drive Rest API v3 - как переместить файл в корзину? .

Вот функция, которая должна очищать файлы:

def trashFile(service, file_id):
        # First retrieve the file from the API.
        file = service.files().get(fileId=file_id,fields="trashed" ).execute()

        # File's new metadata.
        file['trashed'] = True

        # Send the request to the API.
        updated_file = service.files().update(body=file).execute()
        return updated_file
        return None

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

Что мне делать?Заранее благодарим за помощь.

1 Ответ

1 голос
/ 06 июня 2019
  • Вы хотите переместить файл в корзину с помощью Drive API v3 через клиентскую библиотеку Google с Python.

Я могу понять, как описано выше.Чтобы добиться этого, как насчет этой модификации?

Модифицированный скрипт 1:

Если ваш скрипт модифицирован, пожалуйста, измените его следующим образом.

С:
updated_file = service.files().update(body=file).execute()
Кому:
updated_file = service.files().update(fileId=file_id, body=file).execute()

Модифицированный скрипт 2:

Например, как насчет этого модифицированного скрипта?В этом случае это может быть достигнуто одним вызовом API.

def trashFile(service, file_id):
    body = {'trashed': True}
    updated_file = service.files().update(fileId=file_id, body=body).execute()
    return updated_file

Примечание:

  • Если файл, который вы хотите переместить, НЕ является вашим файлом, файл можетне сможет быть перемещен.Пожалуйста, будьте осторожны.

Ссылка:

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