我正在使用Google Driver API python庫以CSV格式下載文件。Google Drive API V3 export_media缺少內容長度和內容範圍
google_drive_service = get_service()
mimeType = 'text/csv'
request = google_drive_service.files().export_media(fileId='abc', mimeType=mimeType)
fh = io.BytesIO()
downloader = MediaIoBaseDownload(fh, request)
done = False
while not done:
status, done = downloader.next_chunk()
print "Download %d%%." % int(status.progress() * 100)
fh.seek(0)
content = fh.getvalue()
由於它是一個大的選項卡,下載過程按塊分解。它不斷打印出「下載0%」。當代碼檢查下載過程時,我通過庫代碼循環。它始終顯示「下載0%」的原因是因爲http響應沒有「內容範圍」和「內容長度」標題,這會導致進程檢查問題。
如果您有興趣複製此過程。創建電子表格並填寫列'A:E'和行'1:10000'的單元格值。讓我知道是否有人有同樣的問題或有線索說明爲什麼會發生這種情況。這裏是Gdrive代碼:https://github.com/google/google-api-python-client/blob/master/googleapiclient/http.py#L664-L691