GoogleドライブスプレッドシートをExcelファイルとしてダウンロードしようとしています。私が言う限りでは、GoogleドライブAPIは、export_mediaリクエストに異なるMIMEタイプを指定するだけで、これを非常に簡単にする必要があります。GoogleドライブAPI v3がGoogleスプレッドシートをExcelとしてダウンロード
チュートリアルスクリプトに基づいて、私はをうまく利用できます。は、スプレッドシートをCVSとOpen Officeシートとしてダウンロードします。すばらしいです!
MIMEタイプがapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheet
に設定されている場合、MS Excelで指定されているように、ダウンローダはステータスの進行を停止せずにストリームから読み込み続けます。
フルスクリプトはhereです。 GoogleドライブのAPIドキュメントhere
問題のあるコードでアプリを作成するために、指示に従って、実行するにはここにある:
file_id = 'my spreadsheet id'
request = service.files().export_media(fileId=file_id, mimeType='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet')
fh = FileIO('data.xls', 'wb')
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
status, done = downloader.next_chunk()
print("Download %d%%." % int(status.progress() * 100))
それはDownload 0%
を印刷し続け、停止したことがありません。
これは、異なるマシン間でのテストと同じ動作ですか? –
こんにちは@AL。正直言ってわかりません。私は手元に1つしか持っていない。私はコンテナでそれを実行しようとすることができます。もしあなたが喜んでいるなら、多分あなたはあなたのマシンでそれを走らせることができますか?乾杯 –