📜  Beautifulsoup 文档 - Python (1)

📅  最后修改于: 2023-12-03 15:13:38.723000             🧑  作者: Mango

Beautifulsoup 文档 - Python

介绍

Beautifulsoup是Python中一个强大的HTML解析库,用于从HTML或XML文件中提取数据。它提供了一组简单易用的API,可根据标记中的标签、属性和文本内容搜索文档,并提取所需数据。

安装

可以使用pip安装Beautifulsoup库:

pip install beautifulsoup4
使用示例
创建BeautifulSoup对象

使用BeautifulSoup需要先将HTML文本传递给它,然后它会将文本解析成一个树形结构,可以对它进行遍历和搜索。

from bs4 import BeautifulSoup

# HTML文本
html_doc = "<html><head><title>Beautifulsoup 文档 - Python</title></head><body><p>Beautifulsoup是Python中一个强大的HTML解析库,用于从HTML或XML文件中提取数据。它提供了一组简单易用的API,可根据标记中的标签、属性和文本内容搜索文档,并提取所需数据。</p></body></html>"

# 创建BeautifulSoup对象
soup = BeautifulSoup(html_doc, 'html.parser')

# 打印HTML文档中所有的a标签
for a_tag in soup.find_all('a'):
    print(a_tag.get('href'))
搜索文档

可以使用soup.find()或soup.findAll()方法搜索文档中的标签,它们都可以接受标签名、属性和文本内容作为参数。

from bs4 import BeautifulSoup

# HTML文本
html_doc = "<html><head><title>Beautifulsoup 文档 - Python</title></head><body><p>Beautifulsoup是Python中一个强大的HTML解析库,用于从HTML或XML文件中提取数据。它提供了一组简单易用的API,可根据标记中的标签、属性和文本内容搜索文档,并提取所需数据。</p></body></html>"

# 创建BeautifulSoup对象
soup = BeautifulSoup(html_doc, 'html.parser')

# 搜索title标签
title = soup.find('title')
print(title)

# 搜索body标签中的所有p标签
p_tags = soup.body.findAll('p')
print(p_tags)

# 搜索属性为class="main-content"的div标签
div_tag = soup.find('div', {'class': 'main-content'})
print(div_tag)
提取数据

Beautifulsoup提供了一系列的方法用于提取标签的文本内容、属性和标签名等信息。

from bs4 import BeautifulSoup

# HTML文本
html_doc = "<html><head><title>Beautifulsoup 文档 - Python</title></head><body><p>Beautifulsoup是Python中一个强大的HTML解析库,用于从HTML或XML文件中提取数据。它提供了一组简单易用的API,可根据标记中的标签、属性和文本内容搜索文档,并提取所需数据。</p></body></html>"

# 创建BeautifulSoup对象
soup = BeautifulSoup(html_doc, 'html.parser')

# 获取title标签的文本内容
title_text = soup.title.text
print(title_text)

# 获取a标签的href属性值
href = soup.a.get('href')
print(href)

# 获取p标签的文本内容
p_text = soup.body.p.text
print(p_text)
深入学习

了解更多Beautifulsoup的使用方法,可以参考官方文档