LXML Xpath 機能を使用していくつかの HTML パーサーを作成しています。うまく機能しているように見えますが、1つの大きな問題があります。
すべての HTML タグを解析すると、 tagsなど<p>
を使用する単語があります。これらのタグを保持する必要があります。<b>
<i>
たとえば、HTML を解析するとき。
<div class="ArticleDetail">
<p>Hello world, this is a <b>simple</b> test, which contains words in <i>italic</i> and others.
I have a <strong>strong</strong> tag here. I guess this is a silly test.
<br/>
Ops, line breaks.
<br/></p>
この Python コードを実行すると、
x = lxml.html.fromstring("...html text...").xpath("//div[@class='ArticleDetail']/p")
for stuff in x:
print stuff.text_content()
これはうまくいくように見えますが、p だけではなく、他のすべてのタグを削除します。
出力:
Hello world, this is a simple test, which contains words in italic and others.
I have a strong tag here. I guess this is a silly test.
Ops, line breaks.
ご覧のとおり、<b>
、<i>
および<strong>
タグがすべて削除されています。とにかくそれらを保つことができますか?