xpath - python怎么用lxml处理
本文介绍了xpath - python怎么用lxml处理的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
例如:
<p>
没
<em><!--red_beg-->aa<!--red_end--></em>
</p>
<p>
没
<em><!--red_beg-->aa<!--red_end--></em>
没
<em><!--red_beg-->aa<!--red_end--></em>
</p>
<p>
没
</p>
就是在p标签里可能会出现同样的em标签,而且数量不定,那我怎么获取p的内容,包括em里的内容。
例如第二个p获取输出是‘没aa没aa’
或者获取到p节点之后,怎么把里面的内容转换为字符串
解决方案
今天偶然学到处理这个问题的方法,特意翻出来这个问题回答。题主你可以看一下xpath的轴,比如你要取得第二个<p>
标签的没aa没aa,实际是取得它全部后代节点的文本内容,可以使用element_dom.xpath("//p[2]//descendant::text()")
来取得,拿到的结果是一个这样['没', 'aa', '没', 'aa']
的list,然后自己手动拼接成字符串就可以了,比如"".join(list)
。同理,如果你需要进行其他操作,也可以使用类似的方法。
这篇关于xpath - python怎么用lxml处理的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文