【问题标题】:Extracting HTML data fields with Python使用 Python 提取 HTML 数据字段
【发布时间】:2013-03-10 13:59:01
【问题描述】:

请原谅我缺乏知识,但是给定以下格式的 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>

【问题讨论】:

    标签: python python-3.x extract html-content-extraction


    【解决方案1】:

    您需要一个 HTML 解析器。我推荐beautiful souplxml.

    【讨论】:

    • 是的,我都有,只是还没弄清楚如何正确使用它们。 :(
    【解决方案2】:

    使用第三方模块美汤,lxml或内置模块html.parser。例如:

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

    或者,如果喜欢,您可以将正则表达式用于小目标。

    【讨论】:

    • 我终于得到了正则表达式来做我需要的;至少在大多数情况下。谢谢! :)
    猜你喜欢
    • 2013-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-16
    • 2013-01-29
    • 1970-01-01
    • 1970-01-01
    • 2017-12-21
    相关资源
    最近更新 更多