Python Google Drive API限制下载速度



毫无问题地从Google Drive下载文件。我需要限制下载速度,例如512kbps,每秒1024kbps。

尝试时间let。也许有限制速度。

        http = credentials.authorize(httplib2.Http())
        drive_service = discovery.build('drive', 'v3', http=http, cache_discovery=False)
        request = drive_service.files().get_media(fileId=link)

        file = drive_service.files().get(fileId=link).execute()
        dosyadi = file['name']
        fh = io.FileIO(yazilacakyer, 'wb')
        downloader = MediaIoBaseDownload(fh, request, chunksize=1024 * 1024)
        time1 = time.time()
        done = False
        while done is False:
            status, done = downloader.next_chunk()
            fark = float(time.time() - time1)
            time1 = time.time()
            print('Download Speed:')
            print(self.byteToKb_or_Mb(int(1024/fark)*1024))

不确定您要实现的目标,但是最好使用http标准中的范围请求标头逐件拉动它,而不是使用带宽。https://developer.mozilla.org/en-us/docs/web/http/range_requests

例如,添加标头范围:字节= 0-1023将使服务器仅返回那一块数据。

后来您可以多线程以将来立即拉出多个块。

相关内容

  • 没有找到相关文章

最新更新