У Google есть страница , которая предоставляет пример использования Python API Google Drive для доступа к облачному хранилищу вашей учетной записи.В нем показано, как составлять список файлов, но вы также можете использовать API-интерфейс Drive для загрузки файлов :
file_metadata = {'name': 'photo.jpg'}
media = MediaFileUpload('files/photo.jpg',
mimetype='image/jpeg')
file = drive_service.files().create(body=file_metadata,
media_body=media,
fields='id').execute()
print 'File ID: %s' % file.get('id')
В этом случае будет использоваться форма загрузки .отправить файл на Flask, а затем на Google Drive.Это хорошо, если файлы небольшие, а количество пользователей небольшое, но в целом такой подход будет не масштабируемым, поскольку ваш экземпляр Flask является однопоточным и не сможет отвечать на другие запросы, пока один пользователь загружает контент.Если вам нужна загрузка в масштабе, вы должны загрузить файлы напрямую.Вы также можете исследовать выполнение задачи в качестве фонового задания, например, через Redis Queue (здесь ссылка на Heroku ) или Cucumber, что будет зависеть от используемой платформы.
Если вы не против использовать конкурента Amazon S3 для GDrive и Dropbox, есть полезная серия YouTube , которая поможет вам настроить Flask с помощью библиотеки boto3.Если у вас есть корзина S3 и ключи учетной записи, вы можете отправлять и получать данные по мере необходимости.Вот страница Heroku , где обсуждается настройка прямой загрузки S3 в Python.Подробности могут измениться, если вы используете другую платформу.