2016-11-22 11 views
0

私はFB apiを呼び出してその応答をGoogleシートにインポートするためのスクリプトを作成しています。私はしかし、私は私が進むべきかどうかはわかりません、私のGoogleスプレッドシートにDaily Total ImpressionsWeekly Total Impressions28 Days Total Impressionsの値をインポートしたいJSONレスポンスからGoogleスプレッドシートにデータを渡す

{ 
    "data":[ 
     { 
     "id":"page_id/insights/page_impressions/day", 
     "name":"page_impressions", 
     "period":"day", 
     "values":[ 
      { 
       "value":26023596, 
       "end_time":"2016-11-17T08:00:00+0000" 
      }, 
      { 
       "value":24447386, 
       "end_time":"2016-11-18T08:00:00+0000" 
      }, 
      { 
       "value":31057386, 
       "end_time":"2016-11-19T08:00:00+0000" 
      } 
     ], 
     "title":"Daily Total Impressions", 
     "description":"Daily: The number of impressions seen of any content associated with your Page. (Total Count)" 
     }, 
     { 
     "id":"page_id/insights/page_impressions/week", 
     "name":"page_impressions", 
     "period":"week", 
     "values":[ 
      { 
       "value":233007217, 
       "end_time":"2016-11-17T08:00:00+0000" 
      }, 
      { 
       "value":200263630, 
       "end_time":"2016-11-18T08:00:00+0000" 
      }, 
      { 
       "value":194289364, 
       "end_time":"2016-11-19T08:00:00+0000" 
      } 
     ], 
     "title":"Weekly Total Impressions", 
     "description":"Weekly: The number of impressions seen of any content associated with your Page. (Total Count)" 
     }, 
     { 
     "id":"page_id/insights/page_impressions/days_28", 
     "name":"page_impressions", 
     "period":"days_28", 
     "values":[ 
      { 
       "value":867302439, 
       "end_time":"2016-11-17T08:00:00+0000" 
      }, 
      { 
       "value":868201060, 
       "end_time":"2016-11-18T08:00:00+0000" 
      }, 
      { 
       "value":874965509, 
       "end_time":"2016-11-19T08:00:00+0000" 
      } 
     ], 
     "title":"28 Days Total Impressions", 
     "description":"28 Days: The number of impressions seen of any content associated with your Page. (Total Count)" 
     } 
    ], 
    "paging":{ 
     "previous":"https://graph.facebook.com/v2.3/page_id/insights/page_impressions?access_token=my_token&since=1479068112&until=1479327312", 
     "next":"https://graph.facebook.com/v2.3/page_id/insights/page_impressions?access_token=my_token&since=1479586512&until=1479845712" 
    } 
} 

JSON.stringifyを使用した後、私は次のような応答を持っています。私は特定の値にアクセスする方法を知っています(例:data.data[0].values[0].value)。しかし、それだけです。私が次に何をすべきかわからない。

理想的には、新しい配列を作成してそこにデータをプッシュできるようにしたいと考えています。 (var data = []; data.push(???)

しかし、私は完全に複数の配列/オブジェクトで失われています。

ありがとうございました!

答えて

3

次のスクリプトはどうですか? "jsondata"はあなたのデータです。このスクリプトをスプレッドシートのコンテナバウンドスクリプトとして使用してください。

var data = JSON.parse(jsondata); 
var ar = []; 
for (var i in data.data){ 
    for (var k in data.data[i].values) { 
     ar.push([data.data[i].title, data.data[i].values[k].value]); 
    } 
} 
ass = SpreadsheetApp.getActiveSpreadsheet(); 
ass.getRange('a1').offset(0, 0, ar.length, ar[0].length).setValues(ar); 

結果は以下の通りである。

enter image description here

関連する問題