[英]Remove first tag html using python & scrapy
我有一个HTML:
<div class="abc">
<div class="xyz">
<div class="needremove"></div>
<p>text</p>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
</div>
我用过:response.xpath('// div [包含(@class,“ abc”)] / div [包含(@class,“ xyz”)]')。extract()
结果:
u'['<div class="xyz">
<div class="needremove"></div>
<p>text</p>
<p>text</p>
<p>text</p>
<p>text</p>
</div>']
我要删除<div class="needremove"></div>
。 你能帮我吗?
您可以使用class="needremove"
获得除div
以外的所有所有子标记:
response.xpath('//div[contains(@class, "abc")]/div[contains(@class, "xyz")]/*[local-name() != "div" and not(contains(@class, "needremove"))]').extract()
外壳演示:
$ scrapy shell index.html
In [1]: response.xpath('//div[contains(@class, "abc")]/div[contains(@class, "xyz")]/*[local-name() != "div" and not(contains(@class, "needremove"))]').extract()
Out[1]: [u'<p>text</p>', u'<p>text</p>', u'<p>text</p>', u'<p>text</p>']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.