【发布时间】:2017-09-13 14:38:52
【问题描述】:
var url = 'http://stockcharts.com/def/servlet/SC.scan?s=TSAL[t.t_eq_s]![T.E_EQ_N]![T.E_NE_O]![as0,20,tv_gt_40000]![th0_gt_am1,253,th]&report=predefall';
var text = UrlFetchApp.fetch(url).getContentText();
var xml = XmlService.parse(text);
对为什么我收到标题中提到的错误消息有任何想法吗? 我已经用 '&' 替换了 '&'在“网址”中。 我怀疑它可能是 '[', ']' 和/或 '!'这就是问题所在。 我已阅读有关此类问题的其他帖子,但自己无法解决问题 - 希望有人可以帮助我。
更新 根据 Michael Kay 的意见,我回去阅读了更多帖子——尤其是这些:
Character encoding issue when using Google Apps Script to extract data from web page
What is the best way to parse html in google apps script
-并决定采用更简单的解决方案(因为我只需要网页中的符号)。所以我的代码最终看起来像这样:
var url = 'http://stockcharts.com/def/servlet/SC.scan?s=TSAL[t.t_eq_s]![T.E_EQ_N]![T.E_NE_O]![as0,20,tv_gt_40000]![th0_gt_am1,253,th]&report=predefall';
var text = UrlFetchApp.fetch(url).getContentText();
text = text.substring(text.search('<tbody>'),text.search('</tbody>'));
var srchstr = 'symbol=';
while (text.search(srchstr) > -1){
var start = text.search(srchstr) + srchstr.length;
text = text.substring(start, text.length);
var end = text.search('"');
var symbol = text.substring(0, end);
Logger.log(symbol);
}
【问题讨论】: