Как ускорить поиск в Google Диске API - PullRequest
1 голос
/ 17 октября 2019

Приведенный ниже код занимает около 2 секунд для запроса определенной папки, содержащей ~ 5 слайдов Google. Вопрос: Есть ли способ ускорить / оптимизировать поиск в Google Drive API? Для моего варианта использования (выпадающее меню) 2 секунды - это слишком много для прямой обратной связи. Я думаю, что у пользователей будет аневризма;)

# all the credentials stuff....

mime = 'application/vnd.google-apps.presentation'
gSlideFolder = 'folderId of presentations folder'
results = service.files().list(q=f"'{gSlideFolder}' in parents and mimeType='{mime}' and trashed=false",
                                  spaces='drive',
                                  fields='nextPageToken, files(id, name)'
                                  ).execute()

items = results.get('files', [])

# Print results in items.....

Я очень новичок в этом API ... так что это может быть (это) что-то глупое. Заранее извиняюсь.

1 Ответ

2 голосов
/ 17 октября 2019

Ответ:

К сожалению, здесь вы ничего не можете сделать. Ваш код максимально оптимизирован.

Дополнительная информация:

Что касается вашего кода, то только одна строка кода взаимодействует с Google Drive API,По соображениям лучшей практики я лично определил бы ваши параметры отдельно и отправил бы их следующим образом:

mime = 'application/vnd.google-apps.presentation'
gSlideFolder = 'folderId of presentations folder'
q = f"'{gSlideFolder}' in parents and mimeType='{mime}' and trashed=false"
s = 'drive'
f = 'nextPageToken, files(id, name)'

results = service.files().list(q=q, spaces=s, fields=f).execute()

Однако с точки зрения вашего фактического вызова API здесь вы ничего не можете сделать - вы ждете запросадля отправки на серверы Google, серверы Google для обработки и выполнения запроса, а также отправки результата обратно в ваше приложение. 2 секунды не так уж долго для Files: list запроса.

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