Fetch未将所有数据从json输出到Google工作表
我使用fetch将数据从Fetch未将所有数据从json输出到Google工作表,json,google-apps-script,google-sheets,urlfetch,custom-function,Json,Google Apps Script,Google Sheets,Urlfetch,Custom Function,我使用fetch将数据从json输出到Google工作表 这是我从@Tanaike得到的,由@Rubén添加到的 function GETCONNECTIONS(url) { var response = UrlFetchApp.fetch(url); var responseText = response.getContentText(); var responseJson = JSON.parse(responseText); var connectionKeys = Obj
json
输出到Google工作表
这是我从@Tanaike得到的,由@Rubén添加到的
function GETCONNECTIONS(url) {
var response = UrlFetchApp.fetch(url);
var responseText = response.getContentText();
var responseJson = JSON.parse(responseText);
var connectionKeys = Object.keys(responseJson.connections[0]);
var data = responseJson.connections.map(e => connectionKeys.map(f => {
return e[f] instanceof Array ? e[f].join("|") : e[f];
}));
data.unshift(connectionKeys);
数据来自调查,这是一个关于我的产出的普遍问题的例子
json看起来像(A)
文件后面(B)
及稍后(C)
仅输出第一部分(A)的公共数据
(仅显示输出的标题)
来自(B)部分的数据未在数据中输出
"Tell us about the relationship between your organization and this organization": [
"We give funds to this organization",
"We have the same parent organization"
],
"Your personal connection to this organization": "I work there",
"Your personal feelings about this organization": ""
来自(C)部分的数据未在数据中输出
"Tell us about the relationship between your organization and this organization": [
"We give funds to this organization",
"We have the same parent organization"
],
"Your personal connection to this organization": "I work there",
"Your personal feelings about this organization": ""
我需要
(仅显示标题)
Jsonhttps://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LKFJWKZ8KUXKPOU62XFN7SJMOU2ZL5MBB-WDD1NNPKPSFEY76BIAFOWOJMA1YB3ESKFZQTV3DANYCMRHZHMUWOJR9NVTBUBLHYHCD5HHA8TJX5YDDPLJXBCW800JGJDC8W6JGDINX ZvEr9Orxvk8od,而UDLSF MVN60P3TS3F0PU0G3GJJJ2FYK6FOVILLIZK7OZC7ZCXSVPXPHXNQP0KDFBPY946XF1VOMG1OONII8WBYYB8PF1RKHM0QUOFUNX6RQG6XPZZZYNDLHNPTNDEU9O4LTWXJ0PG1JJ6JR6JRSK24HCIK3NRQ9LX1WJBAMNAGHQD0QJXXN1U2WARFM0BTLBFN0NMARM7A8XTADZLKKKKJCN9FNEH0PS3NK\FXA-SMPNGMG&lib=MDPDXUK2JJJK2JG8K8K8K8K8K8K8K8KZZZZL7W>
如何从json输出所有
数据
谢谢我做的有点不同,但希望这能帮助您可视化数据:
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(keys.join('<br />')), "Keys");
var html="";
obj.connections.forEach(function(c){
keys.forEach(function(k){
html+=Utilities.formatString('<br />%s:%s',k,c[k] instanceof Array?c[k].join("|"):c[k]);
});
html+='<hr>';
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Connnections");
}
函数getDataFromJSON(){
常量url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LKFJWKZ8KUXKPOU62XFN7SJMOU2ZL5MBB-WDD1NNPKPSFEY76BIAFOWOJMA1YB3ESKFZQTV3ANYCMHHZHMUWOJR9NVTBUBLHYHCD5HHA8TJX5YDDPLJXBCW800JGJDC8W6JGDINX ZvEr9Orxvk8od,而UDLSFU MVN60P3Ts3F0PU0G3GJJJ2FYHWILZK7V7ZCP8W8W8W8W8W7ZCP8W9W9W9W6JGDJGDZK8W8W8W8W9W9W9W9W9W9W6JGDL6ZZZK8WHXNQP0KDFBPY946XF1VOMG1LONONII8WBYYB8PF1RKHM0QUOFUNX6RQG6XPZZZYNDLHNPTNDEU4LtWXJ0PG1J6GI6JRSK24HCIK3NRQ9LX1WJBAMNAGHQD0QJXXNN1U2WARFAJMFMXOJFD90BTLbFN0RM7A8STAIDN7SFEHQEAD4ZLQWKJCN9W0PS3NK(FXA-SMSRPNGMG&lib=MDMGPDXH2JG8XUK8XH2JG8XHA7W“;
const jsn=UrlFetchApp.fetch(url.getContentText();
const obj=JSON.parse(jsn);
常量键=对象键(对象连接[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(key.join(“
”),“key”);
var html=“”;
对象连接forEach(功能(c){
键。forEach(函数(k){
html+=Utilities.formatString('
%s:%s',k,c[k]数组实例?c[k]。join(“|”):c[k]);
});
html+=“
”;
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html),“连接”);
}
此版本中的数据更容易可视化:
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(keys.join('<br />')), "Keys");
var html="";
obj.connections.forEach(function(c,j){
html+=Utilities.formatString('<br />Connection: %d',j+1);
keys.forEach(function(k,i){
html+=Utilities.formatString('<br />%s-<strong>%s</strong>:%s',i+1,k,c[k] instanceof Array?c[k].join("|"):c[k]);
});
html+='<br /><hr>';
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html).setWidth(600), "Connnections");
}
函数getDataFromJSON(){
常量url=”https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LKFJWKZ8KUXKPOU62XFN7SJMOU2ZL5MBB-WDD1NNPKPSFEY76BIAFOWOJMA1YB3ESKFZQTV3ANYCMHHZHMUWOJR9NVTBUBLHYHCD5HHA8TJX5YDDPLJXBCW800JGJDC8W6JGDINX ZvEr9Orxvk8od,而UDLSFU MVN60P3Ts3F0PU0G3GJJJ2FYHWILZK7V7ZCP8W8W8W8W8W7ZCP8W9W9W9W6JGDJGDZK8W8W8W8W9W9W9W9W9W9W6JGDL6ZZZK8WHXNQP0KDFBPY946XF1VOMG1LONONII8WBYYB8PF1RKHM0QUOFUNX6RQG6XPZZZYNDLHNPTNDEU4LtWXJ0PG1J6GI6JRSK24HCIK3NRQ9LX1WJBAMNAGHQD0QJXXNN1U2WARFAJMFMXOJFD90BTLbFN0RM7A8STAIDN7SFEHQEAD4ZLQWKJCN9W0PS3NK(FXA-SMSRPNGMG&lib=MDMGPDXH2JG8XUK8XH2JG8XHA7W“;
const jsn=UrlFetchApp.fetch(url.getContentText();
const obj=JSON.parse(jsn);
常量键=对象键(对象连接[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(key.join(“
”),“key”);
var html=“”;
对象连接forEach(函数(c,j){
html+=Utilities.formatString('
连接:%d',j+1);
键。forEach(函数(k,i){
html+=Utilities.formatString('
%s-%s:%s',数组的i+1,k,c[k]实例?c[k]。连接(“|”):c[k]);
});
html+='
';
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html.setWidth(600),“连接”);
}
进入电子表格:
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
let vA=[];
//var html="";
obj.connections.forEach(function(c,j){
//html+=Utilities.formatString('<br />Connection: %d',j+1);
vA[j]=[];//create array for each row
keys.forEach(function(k,i){
//html+=Utilities.formatString('<br />%s-<strong>%s</strong>:%s',i+1,k,c[k] instanceof Array?c[k].join("|"):c[k]);
vA[j].push(c[k] instanceof Array?c[k].join('\n'):c[k]);//push in row values
});
//html+='<br /><hr>';
});
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html).setWidth(600), "Connnections");
const ss=SpreadsheetApp.getActive();
const sh=ss.getActiveSheet();
sh.clearContents();//clear sheet
vA.unshift(keys);//put keys in as headers
sh.getRange(1,1,vA.length,vA[0].length).setValues(vA);//load the data
}
函数getDataFromJSON(){
常量url=”https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LKFJWKZ8KUXKPOU62XFN7SJMOU2ZL5MBB-WDD1NNPKPSFEY76BIAFOWOJMA1YB3ESKFZQTV3ANYCMHHZHMUWOJR9NVTBUBLHYHCD5HHA8TJX5YDDPLJXBCW800JGJDC8W6JGDINX ZvEr9Orxvk8od,而UDLSFU MVN60P3Ts3F0PU0G3GJJJ2FYHWILZK7V7ZCP8W8W8W8W8W7ZCP8W9W9W9W6JGDJGDZK8W8W8W8W9W9W9W9W9W9W6JGDL6ZZZK8WHXNQP0KDFBPY946XF1VOMG1LONONII8WBYYB8PF1RKHM0QUOFUNX6RQG6XPZZZYNDLHNPTNDEU4LtWXJ0PG1J6GI6JRSK24HCIK3NRQ9LX1WJBAMNAGHQD0QJXXNN1U2WARFAJMFMXOJFD90BTLbFN0RM7A8STAIDN7SFEHQEAD4ZLQWKJCN9W0PS3NK(FXA-SMSRPNGMG&lib=MDMGPDXH2JG8XUK8XH2JG8XHA7W“;
const jsn=UrlFetchApp.fetch(url.getContentText();
const obj=JSON.parse(jsn);
常量键=对象键(对象连接[0]);
设vA=[];
//var html=“”;
对象连接forEach(函数(c,j){
//html+=Utilities.formatString('
连接:%d',j+1);
vA[j]=[];//为每行创建数组
键。forEach(函数(k,i){
//html+=Utilities.formatString('
%s-%s:%s',数组的i+1,k,c[k]实例?c[k]。连接(“|”):c[k]);
vA[j].数组的推送(c[k]实例?c[k].连接('\n'):c[k]);//推送行值
});
//html+='
';
});
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html.setWidth(600),“连接”);
const ss=SpreadsheetApp.getActive();
const sh=ss.getActiveSheet();
sh.clearContents();//清除工作表
vA.unshift(键);//将键作为标题放入
sh.getRange(1,1,vA.length,vA[0].length).setValues(vA);//加载数据
}
请发布您的原始jsonI添加了一个经过消毒的JSONOper,谢谢。是否可以将此数据添加到工作表中,我尝试了此sht.getRange(1,1,html.length,html[0].length)。setValues(html)
但是没有goThank you Cooper。我非常感谢您的帮助!
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(keys.join('<br />')), "Keys");
var html="";
obj.connections.forEach(function(c){
keys.forEach(function(k){
html+=Utilities.formatString('<br />%s:%s',k,c[k] instanceof Array?c[k].join("|"):c[k]);
});
html+='<hr>';
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html), "Connnections");
}
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(keys.join('<br />')), "Keys");
var html="";
obj.connections.forEach(function(c,j){
html+=Utilities.formatString('<br />Connection: %d',j+1);
keys.forEach(function(k,i){
html+=Utilities.formatString('<br />%s-<strong>%s</strong>:%s',i+1,k,c[k] instanceof Array?c[k].join("|"):c[k]);
});
html+='<br /><hr>';
});
SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html).setWidth(600), "Connnections");
}
function getDataFromJSON() {
const url="https://script.googleusercontent.com/macros/echo?user_content_key=wdu1jsOZR1FXIfljo3adgITKSaGdmtr1XIlQod-5LkFJWKz8bKUXkpou62XfN7sJmOU2ZL5mbB-wDd1NnpkpSFeY76BiaFOWOJmA1Yb3SEsKFZqtv3DaNYcMrmhZHmUMWojr9NvTBuBLhyHCd5hHa8TJX5ydsDPljxBccW800JGJdC8wte9w6JgdINX__ZvEr9Orxvk8od_4WhINrS1UdLSF_Mvn60p3tS3F0PU0G3gjE2x5FoVILaIZk7KcgdZtoRLOZR3Hw6iE83c7Od3ZCxsVPxPhxNqP0kDfbpY946Xf1vOmg1loOnII8WbYyB8pF1RKHM0quOFuNx6rQg6xpZxZOYNDLHNpptndeU9o4Ltwxj0PG1J6Gi6JRSk24HcIK3NRq9Lx1wjBamNAgHqD0QjxXNn1u2wARfAJMFmXoJFD90btlBFN0NmArM7a8XstaiDzN7sfEhqeAd4e6zlqwKKjICN9fnW0pS3kNK_FXA-SMsrpnGMp1g&lib=MDmgpdXHxuQ1dJ2wjGRxaDhUC8xcaHA7W";
const jsn=UrlFetchApp.fetch(url).getContentText();
const obj=JSON.parse(jsn);
const keys=Object.keys(obj.connections[0]);
let vA=[];
//var html="";
obj.connections.forEach(function(c,j){
//html+=Utilities.formatString('<br />Connection: %d',j+1);
vA[j]=[];//create array for each row
keys.forEach(function(k,i){
//html+=Utilities.formatString('<br />%s-<strong>%s</strong>:%s',i+1,k,c[k] instanceof Array?c[k].join("|"):c[k]);
vA[j].push(c[k] instanceof Array?c[k].join('\n'):c[k]);//push in row values
});
//html+='<br /><hr>';
});
//SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(html).setWidth(600), "Connnections");
const ss=SpreadsheetApp.getActive();
const sh=ss.getActiveSheet();
sh.clearContents();//clear sheet
vA.unshift(keys);//put keys in as headers
sh.getRange(1,1,vA.length,vA[0].length).setValues(vA);//load the data
}