我有一个像这样的HTML:
<strong>delete1</strong> :
16X<br>
<strong>delete2</strong>
: 16X<br>
<strong>delete3</strong>
需要删除标签以及标签之间的所有文字。怎么做? Node.js + cheerio,web scraping。
答案 0 :(得分:0)
您可以使用 cheerio 获取父级的HTML,并使用 yAxis: {
min: -15,
max: 40,
// reversed: true
tickPositioner: function() {
var tickPositions = $('#containerinternalTemp').highcharts().yAxis[0].tickPositions
return tickPositions;
}
删除不必要的内容。
您也可以使用X-ray并使用过滤器选项。
答案 1 :(得分:0)
Cheerio的操作功能有remove方法。 因此,您可以删除此内容中的所有元素,然后您将只获得没有任何子元素及其文本的文本。
以下是使用JQuery执行此操作的代码段。
$(document).ready(function(){
var $elm = $('#demo-container');
// Remove all child elements then their contents will be gone.
$elm.find('*').remove();
console.log('Contents without child elements',$elm.html());
// Beyond that you could split text with colon and get each values
console.log('Each line as array',$elm.html().replace(/\s/g, '').split(':'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="demo-container">
<strong>delete1</strong> :
16X<br>
<strong>delete2</strong>
: 16X<br>
<strong>delete3</strong>
</div>