1
<div1 class="tag1">
  <div2 class="tag2">
    <div3 class="tag3">no</div3>
    yes
  </div2>
</div1>

div1 を解析したいのですが、そこにテキストがある場合はそのテキストを取得し、保持したいので{name_class: tag1 (or None), text: None}、繰り返します:{name_class: tag2 , text: yes}, {name_class: tag3 , text: no}

この問題を解決するための私のコード:

from pyquery import PyQuery as pq

a = '<div><div>no</div>yes</div>'
tryy = pq(a)[0]

tmp = [{"text" : tryy.text, "class" : pq(tryy).attr('class')}]
tmp + parse_rec(a)

type(tryy) = lxml.etree._Element' しかし、問題は : lxml.etree._Element.textdiv2 に含まれる "yes" を保持しないことです。

私はこれを試しましたが、bs4では機能しません 子ではなく、この要素からのみテキストを抽出します

ライブラリが何であれ、すべてのソリューションを歓迎します

4

1 に答える 1