Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用Google应用程序脚本解析HTML元素中的值?_Javascript_Jquery_Ajax_Google Apps Script - Fatal编程技术网

Javascript 使用Google应用程序脚本解析HTML元素中的值?

Javascript 使用Google应用程序脚本解析HTML元素中的值?,javascript,jquery,ajax,google-apps-script,Javascript,Jquery,Ajax,Google Apps Script,我正在谷歌网站上尝试按类解析HTML元素,我的代码是: function doGet(){ var html = UrlFetchApp.fetch ('http://indicadoresdeldia.cl/').getContentText(); var doc = XmlService.parse(html); var html = doc.getRootElement(); var menu = getElementsByClassName(html, 'span3 u

我正在谷歌网站上尝试按类解析HTML元素,我的代码是:

function doGet(){

  var html = UrlFetchApp.fetch ('http://indicadoresdeldia.cl/').getContentText();
  var doc = XmlService.parse(html);
  var html = doc.getRootElement();
  var menu = getElementsByClassName(html, 'span3 utm')[0];
  var output = XmlService.getRawFormat().format(menu);
  return HtmlService.createHtmlOutput(output);

}
在我运行代码时,出现nexte错误消息ReferenceError:“getElementsByClassName”未定义

我正在尝试为下一页部署示例:

有什么想法吗


提前感谢您的帮助。

根据该网站的说法,您应该直接将这些函数复制到您的项目中(那里有可用的源代码),然后调用它们。这将减轻你的每一个问题

来源:


查看您引用的站点,“GetElementsByCassName”是您应该包含在项目中的函数,请参阅
function getElementsByClassName(element, classToFind) {  
  var data = [];
  var descendants = element.getDescendants();
  descendants.push(element);  
  for(i in descendants) {
    var elt = descendants[i].asElement();
    if(elt != null) {
      var classes = elt.getAttribute('class');
      if(classes != null) {
        classes = classes.getValue();
        if(classes == classToFind) data.push(elt);
        else {
          classes = classes.split(' ');
          for(j in classes) {
            if(classes[j] == classToFind) {
              data.push(elt);
              break;
            }
          }
        }
      }
    }
  }
  return data;
}