使用Python提取HTML数据字段

0 投票
2 回答
863 浏览
提问于 2025-04-17 19:51

请原谅我知识有限,但如果有以下格式的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>

2 个回答

3

你需要一个HTML解析器。我推荐你使用Beautiful Soup或者lxml

2

可以使用一些第三方模块,比如 beautiful soup、lxml,或者 Python 自带的 html.parser 模块。比如:

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

另外,如果你只需要处理一些小的目标,也可以用正则表达式。

撰写回答