使用importXML和脚本存储来自网站的已删除数据

时间:2017-06-15 16:46:30

标签: google-apps-script google-sheets

我试图每天使用Google表格从网站上抓取数据,然后使用脚本将其存储到一边。我是新手,所以我似乎无法让它工作......这就是我用来从网站上抓取数据的原因:

=importxml("https://www.reddit.com/top/", "//div [@data-rank='1']")

然后我想将结果存储在某个地方...我想跟随追尾?但它一直给我错误,我不知道如何解决它。到目前为止,我的脚本看起来像这样(但它出错了):

function addData() {
var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(['=importXML("https://www.reddit.com/top/", "//div [@data-rank='1']")']);
}

还想添加提取数据的日期。

1 个答案:

答案 0 :(得分:0)

试试这个。您可以设置每日定时触发器来运行它。在脚本编辑器中,转到编辑菜单。单击当前项目触发器为存档添加新触发器。定时触发器,每天,选择运行和保存的时间。

function Archive() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var s1=ss.getSheetByName("Sheet1")//sheet with imported data
  var s2=ss.getSheetByName("Sheet2")//archive sheet
  var lr=s2.getLastRow()+1//get last row of archive sheet + 1
  var data=s1.getRange(2,1,1,4).getValues()//get sheet 1 values
  s2.getRange(lr,1,1,1).setValue(new Date())//create date and set in 
  s2.getRange(lr, 2, 1, 4).setValues(data)//set copy of data
}