15

GoogleスプレッドシートのCSV形式のバージョンをダウンロードできるリンクを探しています。現在、私は使用しています:これは、それが唯一の最初のシートをダウンロードすることを除いて、素晴らしい作品GoogleスプレッドシートのダウンロードリンクCSV書き出し - 複数のスプレッドシート

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

。私の文書には複数のシートがあります。誰もがすべてのシートまたは特定のシートをダウンロードするようにこのリンクをフォーマットする方法を知っていますか?ような何か:

&sheet=all 

または

&sheet=3 

答えて

38

Googleシート内のすべての文書はこれらの記事に(かなり行き当たりばったりな方法で)説明されている「チャートツールデータソースプロトコル」を、サポートしています。

  1. "Creating a Chart from a Separate Spreadsheet"
  2. "Query Language Reference"

"Implementing the Chart Tools Datasource Protocol"は、CSVファイルとして特定のシートをダウンロードし、輸出にドキュメントのIDとシートの名前を持つ{sheet_name}{key}を交換するには:

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}オプションを指定します。 オプションは、フィールドにテキストデータが含まれている場合に指定します。そうでない場合は、エクスポート中に切り取られる可能性があります。

+0

見つからない部分は、ドキュメントのシート/ gidのリストを示すAPIインターフェイスです。したがって、ドキュメントシートを動的にループすることが不可能になります。 – Greg

+0

@Gregでは、スプレッドシートAPIからシートのリスト(名前とgid)を取得できます。使用するURLは「GET https://spreadsheets.google.com/feeds/worksheets/ {fileId}/private/full'です。スプレッドシートが公開されていない場合は、OAuthが必要です。ありがとう。 – kiwidrew

+0

ありがとうございます。ドライブAPIでどこが公開されているのかわかりましたか? – Greg

4
  1. は、「共有」ボタンをクリックし、設定Webブラウザでのデバッグツールを起動し、「ネット」タブを選択し
  2. プレスF12「をリンクして誰でも閲覧することができます」あなたのGoogleシート
  3. を開きます。
  4. 「ファイル - >ダウンロード」 - >「カンマ区切りの値.csv現在のシート」(または任意のフォーマットを選択します。xlsx、ODS、PDF、HTML、CSV、またはTSV)
  5. コピー "ネット" タブ

からの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

関連する問題