我正在尝试创建一个 Google Apps 脚本函数,该函数返回网页 ID 元素的内部 HTML。
使用网络浏览器的 JavaScript 控制台,可以这样做:
document.getElementById("myID").innerHTML
在 Google Apps 脚本中:
function getValue(symbol) {
symbol= 'ABCD';
const url = `https://example.com/${symbol}`;
const options = {
headers: {'Content-Type':'application/xml'},
method: 'GET'
};
const res = UrlFetchApp.fetch(url, options);
const contentText = res.getContentText();
// ????
}
从上面的代码中,我已经成功提取了整个网页内容 - 但如何获取
myID
id 的内部 html?
服务器端 JavaScript 与客户端 JavaScript(浏览器)不同。
window
或 document
或其任何方法服务器端都没有 API。要解析 html,您可以使用服务器端 html 解析器,例如 Cheerio。 @tani/@3846masa here 有一个 GAS fork,可能适合您。服务器呈现 html/js 的方式与下载的 html 中可用的内容之间也存在差异。请参阅从使用 JavaScript 的网站将数据抓取到 Google 表格
如果您正在寻找 xml 解析器,这里有一个 内置解析器。