【发布时间】:2017-01-16 11:06:47
【问题描述】:
我的脚本遇到了一个小问题。
我正在尝试获取 json url 并将 json 文件中的数据获取到谷歌电子表格中。以前我在电子表格中使用过 =importData() 函数。但是,我注意到该函数有时不可靠并返回#N/A。我想创建一个脚本,我可以安排它在我想要的时候运行。
代码中一定有错误?你们能帮帮我吗?我得到的错误是:
范围的坐标或尺寸无效。 (第 25 行,文件 “代码”)
这是 google 电子表格文件的链接: https://docs.google.com/spreadsheets/d/15xQy8GDyHRMZXBPcnmSLYUl6GSHZLpTkfhvYR7-BjvQ/edit?usp=sharing
在 Sheet3 上是使用 =importData() 函数的示例。还有我希望这个自定义脚本的样子。
function FetchUrl() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()
var url = sheet[0].getRange(1, 2).getValue();
var response = UrlFetchApp.fetch(url);
var json = response.getContentText();
var dataAll = JSON.parse(json);
Logger.log(dataAll);
var dataset = dataAll;
var rows = [],
data;
for (i = 0; i < dataset.lenght; i++){
data = dataset[i];
rows.push([data.title, data.fields, data.values]);
}
dataRange = sheet[1].getRange(2, 1, rows.length, 3);
dataRange.setValues(rows);
}
Logger.log 输出
[17-01-16 02:34:38:354 PST] {types=[1082, 20, 20, 20, 20, 20, 20, 20], type_names=[unknown, integer, integer, integer, integer, integer, integer, integer], values=[[2017-01-15, 3, 1, 3, 0, 2, 0, 0]], title=Course's all topics' starts yesterday: Get that job (en, -NG), fields=[date, findyourdreamjob, bethebestjobseeker, writethebestcv, findthebestjobs, getajobinterview, excelatjobinterviews, firstdaysonthejob]}
提前致谢!
【问题讨论】:
-
注意:Sheet3 importData 函数 url 有一个 .csv 结尾
-
你调试脚本了吗?也许它错误的原因与内置错误的原因相同(没有数据或类似的)
-
找不到任何问题...数据可用。例如,当内置函数返回 #N/A 时,我只需从同一个 url 手动下载它,数据就很好了。
标签: json google-apps-script google-sheets