JSONデータをGoogleシートにインポートします
-
27-09-2019 - |
質問
私はWebサービスからデータを取得しており、JSONとしてフォーマットされています。 Googleシート用のGoogle Appsスクリプトを作成しています。私の問題は、私はそれを解析することができないようです。
やっている:
var dataset = myJSONtext;
Browser.msgbox(dataset.item[0].key);
エラー、言う:
項目[0]は定義されていません。
私がこれを行うべきであると、いくつかの構築された方法はありますか?
解決
アプリスクリプトは(ほとんど)JavaScriptです。平野 JSON.parse
JSONをオブジェクト表現に解析するための最良のオプションです。
使用することもできます JSON.stringify
オブジェクトを文字列表現にシリアル化する。
他のヒント
2011年以上にこれを見ている人のために 指摘した GoogleサポートフォーラムでHenrique Abreuによると、utilities.jsonparseは非推奨です。スレッドからわかるように、この関数には、キーが数字の場合、つまり「1234」の場合は機能しないというバグがあります。
提案されているように、json.stringify/parseを使用する必要があります。
2013年の更新 - でImportJSONライブラリをチェックしてください
http://blog.fastfedora.com/projects/import-json
「ImportJSONは、Public JSON APIからGoogleスプレッドシートにデータをインポートします。これは、Native GoogleスプレッドシートがImportDataとImportXMLの動作をどのように機能させるかと同様に動作することを目的としています。」
ここで入手可能なコードと彼はそれをスクリプトギャラリーに提出しました:https://raw.github.com/fastfedora/google-docs/master/scripts/importjson/code.gs
使用例:Googleスプレッドシートのスクリプトエディターにコードを入れた後、これをシートのセルA1に貼り付けます。
=ImportJSON("http://gdata.youtube.com/feeds/api/standardfeeds/most_popular?v=2&alt=json", "/feed/entry/title,/feed/entry/content", "noInherit,noTruncate,rawHeaders")
この要点を使用してください:https://gist.github.com/varun-raj/5350595a730a62ca1954
交換
http://example.com/feeds?type=json
JSON URLで
ここにエンティティを追加します
rows.push([data.id, data.name,data.email]);