我正在尝试获取Feed中的link元素,我可以获取description
和title
,但无法获取link
元素。这对我来说似乎很奇怪。这是我的代码
var url = "http://healthyhow.net/feed";
var response = UrlFetchApp.fetch(url);
var shareDoc = Xml.parse(response.getContentText(), true);
var root = shareDoc.getElement(); // feed element
var entries = root.getElement("channel").getElements("item");
for (var i=0; i<1; i++) { //just pick the first entry
var e = entries[i];
var title = e.getElement("title").getText();
var link = e.getElement("link").getText();
var description = e.getElement("description").getText();
}
有人能指出这里有什么问题吗? 谢谢!
答案 0 :(得分:1)
docs表示你应该对HTML进行宽松的解析 - 目前还不清楚它在底下做了什么,但在你的情况下,可能会让HTML <link>
元素与具有相同标签的通用XML元素混淆名称。它似乎会为您的代码解析链接条目(您可以在shareDoc.toXmlString()
中看到):
<link/>http://healthyhow.net/l-arginine-natural-treatment-for-hypertension/
因为它是一个空标签,所以没有文字。
更改:
var shareDoc = Xml.parse(response.getContentText(), true);
是:
var shareDoc = Xml.parse(response.getContentText(), false);
你应该能够获得链接文本。