数据
<a href="/route" data-eventid="train_card" data-eventlabel="2:10"> <strong>2:10</strong> <h5>Bristol to London</h5> <em>Platform 1</em> </a>
代码
function getPlatform() {
var types = document.querySelectorAll('.appList a');
return Array.prototype.map.call(platforms, function(e){
return e.innerText;
// return e.getElementInfo('em');
// return e.fetchText('a em');
});
};
如果我使用innerText,我会得到: -
2:10
Bristol to London
Platform 1
但是我只想从元素EM获得'平台1',我怎么能这样做,我尝试过使用getElementInfo&amp; FetchText - 看看我已经注释掉的代码,既不起作用..任何想法?
答案 0 :(得分:0)
更改
return e.innerText;
到
return e.querySelector("em").textContent;
这是Element API的基本示例。您无法使用casper.getElementInfo
,因为casper
未在页面上下文内部定义(casper.evaluate()
内)。
您需要确保e.querySelector("em")
不为空。