python + BeautifulSoup 实现一个 innerText方法

你可以通过以下步骤来实现一个 `innerText` 方法,它可以提取 HTML 元素中的纯文本内容。

你可以通过以下步骤来实现一个 innerText 方法,它可以提取 HTML 元素中的纯文本内容。首先,确保你已经安装了 beautifulsoup4lxml 作为依赖。

安装依赖

首先安装 beautifulsoup4lxml

pip install beautifulsoup4 lxml

Python 示例代码

from bs4 import BeautifulSoup

def innerText(html):
    # 使用 BeautifulSoup 解析 HTML 内容
    soup = BeautifulSoup(html, 'lxml')
    # 使用 get_text() 方法获取文本内容
    return soup.get_text()

# 示例用法
html_content = """
<html>
    <body>
        <h1>标题</h1>
        <p>这是一个 <a href="#">链接</a>。</p>
        <p>另一个段落。</p>
    </body>
</html>
"""

text = innerText(html_content)
print(text)

解释

  • BeautifulSoup(html, 'lxml'):创建一个 BeautifulSoup 对象,使用 lxml 解析器来解析 HTML 内容。
  • get_text():提取所有 HTML 元素中的纯文本内容,并返回一个字符串。

结果

运行上述代码后,输出将是:

标题
这是一个 链接。
另一个段落。

这样你就实现了一个 innerText 方法,可以从 HTML 中提取文本内容。