Скорость загрузки PyDrive слишком низкая

Я использую PyDrive для загрузки файлов из моего RPi в определенную папку на моем Google Диске. Он успешно работает, но скорость ужасно низкая. Для файла .npy (двоичный файл numpy) размером всего 40 КБ скорость загрузки составляет около 2 секунд. Когда я пытаюсь загрузить другой файл (.pptx) размером 2 МБ, скорость загрузки составляет около 5 секунд. Я также попробовал это на своем Mac, и у него такая же скорость загрузки.

Есть лучший способ сделать это? Мне нужна скорость загрузки менее секунды, так как я собираю данные каждую секунду. Вот код:

from pydrive.auth import GoogleAuth
from pydrive.drive import GoogleDrive
import os
import time

credentials = '/***/pydrive_credentials.txt'
directory = '/***/remote_dir'
gauth = GoogleAuth()
gauth.LoadCredentialsFile(credentials)
# gauth.LocalWebserverAuth()
drive = GoogleDrive(gauth)


# get id of designated folder in Google Drive 
folder = drive.ListFile({'q': "title = 'sample pydrive folder' and trashed=false"}).GetList()[0]

for filename in os.listdir(directory):

    f = drive.CreateFile({'title': filename, 'parents': [{'id': folder['id']}]})
    # f = drive.CreateFile()
    filepath = os.path.join(directory, filename)
    f.SetContentFile(filepath)
    start = time.time()
    f.Upload()
    end = time.time()
    print(end-start)

    # delete file after upload
    # os.remove(filepath)
    
    # to ensure no memory leakage
    f = None
    filepath = None

    print("Uploaded: {}".format(filename))


person Joseph    schedule 22.01.2021    source источник
comment
Трудно сказать, может быть дело в качестве интернет-соединения? Пробовали в другой сети?   -  person Gino Mempin    schedule 22.01.2021
comment
API PyDrive может предоставлять пакетный режим, позволяющий загружать несколько файлов в одном запросе. Если вы регулярно загружаете несколько файлов одновременно, использование такого режима должно немного ускорить процесс, особенно если файлы маленькие. - Странно, что загрузка одного маленького файла занимает около 2 секунд.   -  person CryptoFool    schedule 22.01.2021
comment
Я пробовал в разных сетях и все тот же результат. Моя скорость загрузки составляет около 100 мбит/с, так что это не должно быть проблемой. @Steve, я не вижу пакетного режима в PyDrive API. Кажется, нет другого пути, кроме как загружать их по одному по следующим ссылкам 1 2?   -  person Joseph    schedule 22.01.2021