web-dev-qa-db-ja.com

Google Spreadsheets CSVエクスポートのダウンロードリンク-複数のシート

GoogleスプレッドシートのCSV形式のバージョンをダウンロードできるリンクを見つけようとしています。現在、私は使用しています:

https://docs.google.com/spreadsheets/d/DOCID/export?format=csv

これは、最初のシートのみをダウンロードすることを除いて、うまく機能します。文書に複数のシートがあります。すべてのシートまたは特定のシートのいずれかをダウンロードするように、このリンクをフォーマットする方法を知っている人はいますか?何かのようなもの:

&sheet=all

または

&sheet=3
37

Googleスプレッドシートのすべてのドキュメントは、「チャートツールデータソースプロトコル」をサポートしています。これについては、これらの記事で(やや偶然の方法で)説明しています。

  1. 「別のスプレッドシートからグラフを作成する」
  2. "クエリ言語リファレンス"
  3. "チャートツールデータソースプロトコルの実装"

特定のシートをCSVファイルとしてダウンロードするには、_{key}_をドキュメントのIDに、_{sheet_name}_をエクスポートするシートの名前に置き換えます。

_https://docs.google.com/spreadsheets/d/{key}/gviz/tq?tqx=out:csv&sheet={sheet_name}_

データソースプロトコルは非常に柔軟です。その他のさまざまなオプションは次のとおりです。

応答形式:オプションには_tqx=out:csv_(CSV形式)、_tqx=out:html_(HTMLテーブル)、および_tqx=out:json_( JSONデータ)。

シートの一部をエクスポートします:_range={range}_オプションを指定します。ここで、範囲は任意の有効な範囲指定子です。 _A1:C99_または_B2:F_。

SQLクエリを実行します:tq=SELECT a, b, (d+e)*2 WHERE c < 100 AND x = 'yes'などの_tq={query}_オプションを指定します。

テキストデータのエクスポート:フィールドにテキストデータが含まれている場合は_headers=0_オプションを指定します。

90
kiwidrew
  1. Googleシートを開きます
  2. [共有]ボタンをクリックして、[リンクを知っている全員が閲覧できる]を設定します
  3. F12キーを押して、Webブラウザーでデバッグツールを起動し、[Net]タブを選択します。
  4. 「ファイル->名前を付けてダウンロード->コンマ区切り値.csv現在のシート」(または、xlsx、ods、pdf、html、csv、tsvなどの任意の形式)を選択します。
  5. 「Net」タブからGETリクエストのURLをコピーします

次のようになります。 https://docs.google.com/spreadsheets/d/KEY/export?format=csv&id=KEY&gid=SHEET_ID

「gid」パラメーターはシートIDであり、開いているGoogleシートのURLの末尾にあります。リファレンス: https://developers.google.com/sheets/api/guides/concepts#sheet_id

15
humbads

これはサンプルのCSVデータです をダウンロードできます。このデータのダウンロードリンクは次のように作成されました

  1. Googleシートを開く ->空白->ファイル->開く
  2. 「マイドライブ」または「アップロード」からファイルを開く
  3. ファイル-> Webに公開->「シート名」オプションと「csv」オプション
7
Partha Sen