欢迎来到 Python 的 BeautifulSoup4 (BS4) 教程!BS4 是一个强大的 HTML/XML 解析库,它可以轻松地从 HTML 或 XML 文件中提取数据。在本教程中,我们将介绍 BS4 的基本功能,包括如何安装、使用和解析 HTML/XML 文档。
安装
要使用 BS4,首先需要安装它。你可以使用 pip 命令在命令行中安装它:
pip install beautifulsoup4
导入模块
安装 BS4 后,可以使用以下代码导入库:
from bs4 import BeautifulSoup
解析 HTML/XML 文档
要解析 HTML 或 XML 文档,请将文档传递给 BeautifulSoup 类的构造函数,如下所示:
html_doc = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title"><b>The Dormouse's story</b></p>
<p class="story">Once upon a time there were three little sisters; and their names were
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
and they lived at the bottom of a well.</p>
<p class="story">...</p>"""
soup = BeautifulSoup(html_doc, 'html.parser')
这将创建一个 BeautifulSoup 对象,它可以使用各种方法来查找和提取 HTML 或 XML 文档中的数据。
查找元素
要查找元素,请使用 BeautifulSoup 对象的 find() 或 find_all() 方法。例如,要查找所有的 p 元素,请使用以下代码:
soup.find_all('p')
如果要查找所有具有 class=“title” 的 p 元素,请使用以下代码:
soup.find_all('p', class_='title')
如果要查找具有 id=“link3” 的 a 元素,请使用以下代码:
soup.find_all('a', id='link3')
find_all() 方法返回一个列表,其中包含所有符合条件的元素。
提取数据
要从元素中提取数据,请使用元素的 text 属性或 get() 方法。例如,要提取第一个 p 元素的文本,请使用以下代码:
soup.find('p').text
如果要提取第一个 a 元素的 href 属性,请使用以下代码:
soup.find('a')['href']
结论
BS4 是一个强大的 HTML/XML 解析库,它可以轻松地从 HTML 或 XML 文件中提取数据。在本教程中,我们介绍了如何安装 BS4、如何导入模块、如何解析 HTML/XML 文档以及如何查找和提取元素数据。我希望这篇教程能够帮助你快速入门 BS4,并开始解析和提取 HTML/XML 数据!