Python第七弹:爬虫篇:BeautifulSoup库

一、什么是BeautifulSoup

BeautifulSoup,它是一个用于解析 HTML 和 XML 文档的 Python 库,能够从网页中提取数据,常用于网页抓取和数据挖掘。

  • 非Python标准模块,需要手动安装
  • 安装方式 pip/pip3 install beautifulsoup4
复制代码
安装 pip3 install lxml  # 推荐使用 lxml 作为解析器(速度更快)

如果你没有 lxml,可以使用 Python 内置的 html.parser 作为解析器。

1.1 文档树结构

文档树结构。将字符串结构转换为文档树结构。

BeautifulSoup可以将字符串转换为文档树结构,方便解析。

1.2 BeautifulSoup装载HTML

BeautifulSoup容错:BeautifulSoup功能非常强大,它在装载过程中,如果发现HTML文档中的元素有缺失的情况下,它会尽可能的对文档进行修复,是的最后的文档树是一棵完整的文档树。

这一点十分重要。因为我们面临的大多数网页,或多或少有元素是缺失的,BeautifulSoup都能够正确装载它们。

小结:BeautifulSoup虽然功能强大能够修复一些缺失的HTML元素,但是它还没有智能到完全修复所有HTML文档错误的程度。

python 复制代码
from bs4 import BeautifulSoup
import requests

# 使用 requests 获取网页内容
url = 'https://cn.bing.com/' # 抓取bing搜索引擎的网页内容
response = requests.get(url)

# 使用 BeautifulSoup 解析网页
soup = BeautifulSoup(response.text, 'lxml')  # 使用 lxml 解析器
# 解析网页内容 html.parser 解析器
# soup = BeautifulSoup(response.text, 'html.parser')
相关推荐
枫叶v.4 小时前
Scrapling 入门:一个现代 Python 网页采集框架
开发语言·python
四方云4 小时前
Python 轮插桩、写进调试:通俗+专业解释
开发语言·python
码界筑梦坊4 小时前
127-基于Flask的德国银行信贷客户数据可视化分析系统
开发语言·python·信息可视化·数据分析·flask·毕业设计
子午4 小时前
基于YOLO的车牌识别检测~Python+YOLOV8算法+车牌定位+车牌检测+深度学习
python·算法·yolo
weixin_307779134 小时前
OCR图片文本提取代码
图像处理·python·opencv·自动化·ocr
ZC跨境爬虫4 小时前
模块化烹饪小程序开发日记 Day3:(Flask后端初始化、数据库配置与自定义日志系统搭建)
前端·javascript·数据库·后端·python·flask
格林黄4 小时前
语音电子病历python_websocket实现
开发语言·python·websocket
JavaEdge.4 小时前
07-LangChain Toolkit 实战:从工具函数到 Python Agent,再到 SQL Agent
python·sql·langchain
Chase_______4 小时前
【Java杂项】为什么 b += 1 可以,但 b = b + 1 会报错?类型提升与复合赋值详解
java·开发语言·python