xpath - python怎么用lxml处理
伊谢尔伦
伊谢尔伦 2017-04-18 10:19:05
0
3
1173

例如:

<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节点之后,怎么把里面的内容转换为字符串

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(3)
PHPzhong

今日、この問題に対処する方法を偶然学んだので、それに答えるためにこの質問を思いつきました。質問者さん、例えば 2 番目の <p>标签的“没aa没aa”,实际是取得它全部后代节点的文本内容,可以使用
element_dom.xpath("//p[2]//descendant::text()")来取得,拿到的结果是一个这样['没', 'aa', '没', 'aa']的list,然后自己手动拼接成字符串就可以了,比如"".join(list) を取得したい場合は、xpath の軸を見ることができます。同様に、他の操作を実行する必要がある場合も、同様の方法を使用できます。

いいねを押す +0
大家讲道理

bs4 に変更すると、文字列とテキストの類似点と相違点がここに表示されます。

いいねを押す +0
洪涛

lxml.html の

メソッドは、現在のノードとすべての子ノードのテキスト コンテンツを取得できます。 .text_content()

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート