casper.fetchText
似乎会自动将<br>
提取的文字删除。
例如,如果文本为abc<br>de
,casper.fetchText
则将返回abcde
而不是abc<br>de
。
有什么办法可以保持它不变abc<br>de
吗?
保留的唯一方法<br>
是将元素的表示形式检索为HTML。
有几种方法。casper.fetchText()
连接所有匹配元素的文本内容。这也正是这样element.textContent
做的,但仅适用于一个元素。
您可以使用casper.getHTML()
来检索element.innerHTML
单个元素的:
var content = casper.getHTML(selector);
如果您想要与fetchText
连接所有元素的值的行为相同,那么您需要自己这样做:
var contents = casper.getElementsInfo(selector).map(function(e){
return e.html;
}).join("\n");
casper.getElementsInfo()
提供html
每个元素的属性。的map
创建仅包含一个数组html
字符串和join
使得单个串出来。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句