xpath不获取某元素的两种方法

版权声明:转载请说明地址,谢谢! https://blog.csdn.net/larykaiy/article/details/83476393

例如,下面这段html代码,要获取p标签内容,但是不希望获取class="1"的a标签

<p>
	<!--a标签开始-->
	<a>xx</a>
	<a class="1">1</a>
	<a class="2">2</a>	
</p>

一、xpath的not()方法

x_list = xpath('/p/*[not(@class="1")]')
result = ''.join(x_list)

结果为

	<a>xx</a>
	<a class="2">2</a>	

注意 html的注释也没有了哦
保留注释的方案如下

二、replace()方法

list1 = xpath('/p')
list2 = xpath('/p/a[@class = '1']')
result = list2.replace(list2,'')

结果为

<p>
	<!--a标签开始-->
	<a>xx</a>
	
	<a class="2">2</a>	
</p>

这里就保留了注释还有p标签

展开阅读全文

没有更多推荐了,返回首页