Google Drive API: как найти файлы, которыми * не * поделились со мной? - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь получить список всех файлов, которые у меня есть в папке root моего Диска Google, за исключением тех, которые были предоставлены мне для общего доступа ... и тем не менее Google Drive продолжает выдавать мне оба файла в моем * Папка 1027 * и общие.

Я использую этот поисковый запрос (Python code):

results = service.files().list(
   q="(name contains 'zip' or name contains 'gz') and 'root' in parents and 'me' in owners", fields="files(id, name, parents, owners)").execute()
items = results.get('files', [])

print('Files:')
for item in items:
   print(u'{0}   {1}   {2}'.format(item['name'], item['owners'], item['parents']))

Глядя на документы, кажется, что я все делаю правильно :

  • Я использую 'root' in parents, чтобы включить только файлы в папку root.
  • Я использую 'me' in owners, чтобы включить только мои файлы, а не те поделился со мной. (Я получил этот параметр из https://github.com/googleapis/google-api-python-client/issues/595, который, кажется, объясняет его как «предполагаемое поведение» и предлагает обходной путь).

И все же в списке файлов, которые я вернись, у меня есть такие вещи:

backup_2020-04-15-1033.zip   [{'kind': 'drive#user', 'displayName': 'OTHER USER'S NAME', 'me': False, 'permissionId': 'XXXXXXXXXX', 'emailAddress': 'otheruser@gmail.com'}]   ['{FOLDER ID OBSCURED']

Это один из общих файлов; обратите внимание на 'me': False там. Кроме того, хотя я скрыл родительскую папку, она отличается от идентификатора моей папки root. Другими словами: этот файл не должен был быть возвращен?

Это ошибка Google Drive? Как мне тогда искать только мои файлы?

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