0

私の知識不足で申し訳ありませんが、次の形式の HTML が与えられた場合、個々のデータ フィールドを抽出する最良の方法は何ですか? 多くの場合、それらの一部またはすべてが NULL になることに注意してください。その場合、NULL のままにします。

<div class="profile-section" id="a-bit-more-about">
                            <dl>
            <dt>Name:</dt>
            <dd><span class="given-name">Clem</span> <span class="family-name">Kadiddlehopper</span></dd>
        </dl>
        <!-- <span class="RealName">/ <span class="fn n"><span class="given-name">Clem</span> <span class="family-name">Kadiddlehopper</span></span></span> -->
                        <dl>
        <dt>Joined:</dt>
        <dd>September 1910</dd>
    </dl>
    <div class="sep"></div>
    <dl>
        <dt>Hometown:</dt>
        <dd>Quiet Rest Maximum Security Twilight Home</dd>
    </dl>
    <dl>
        <dt>Currently:</dt>
        <dd><span class="adr"><span class="locality">They won't tell me</span>, <span class="country-name">Zimbobwe</span></span></dd>
    </dl>
    <div class="sep"></div>
4

2 に答える 2

3

HTMLパーサーが必要です。美しいスープまたはlxmlをお勧めします。

于 2013-03-21T06:48:28.390 に答える
2

サードパーティ製モジュールの美しいスープ、lxml、または組み込みモジュール html.parser を使用します。例えば:

from bs4 import BeautifulSoup
soup = BeautifulSoup('<html><body><a>bbb</a></body></html')
soup.find('a')

または、必要に応じて、小さなターゲットに正規表現を使用できます。

于 2013-03-21T09:43:25.630 に答える