公開されたGoogleスプレッドシートドキュメントに由来するcsvファイルを保存する簡単な方法を探していますか?公開されているため、直接リンクからアクセスできます(以下の例では意図的に変更されています)。
リンクを起動するとすぐに、すべてのブラウザでcsvファイルを保存するように求められます。
ない:
DOC_URL = 'https://docs.google.com/spreadsheet/ccc?key=0AoOWveO-dNo5dFNrWThhYmdYW9UT1lQQkE&output=csv'
f = urllib.request.urlopen(DOC_URL)
cont = f.read(SIZE)
f.close()
cont = str(cont, 'utf-8')
print(cont)
、 または:
req = urllib.request.Request(DOC_URL)
req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.13 (KHTML, like Gecko) Chrome/24.0.1284.0 Safari/537.13')
f = urllib.request.urlopen(req)
print(f.read().decode('utf-8'))
HTMLコンテンツ以外のものを印刷します。
(この他の投稿を読んだ後、2番目のバージョンを試しました:Pythonでgoogle docs公開スプレッドシートをcsvにダウンロードしてください。)
私が間違っていることについて何か考えはありますか?私は自分のGoogleアカウントからログアウトしていますが、それが何か価値がある場合は、これは私が試したどのブラウザからでも機能します。私が理解している限り、Google DocsAPIはまだPython3に移植されておらず、個人的な使用のための私の小さなプロジェクトの「おもちゃ」の大きさを考えると、最初からそれを使用することはあまり意味がありません。私はそれを回避することができます。
2回目の試行では、スクリプトからのリクエスト(b / cは識別情報が存在しない)が無視される可能性があると考えていたため、「User-Agent」を残しましたが、違いはありませんでした。