9.10作业

本文介绍了解析HTML的两大利器——BeautifulSoup4和Pyquery。BeautifulSoup4是一个强大的HTML/XML解析器,支持多种解析器如Python标准库和lxml,易于使用且功能强大。Pyquery则是jQuery的Python实现,提供了类似jQuery的语法,操作HTML文档既快速又便捷。本文将指导你如何使用这两个库进行网页解析。
摘要由CSDN通过智能技术生成

BeautifulSoup4
和lxml一样,BeautifulSoup也是一个HTML/XML的解析器,主要功能也是如何解析和提取HTML/XML

Beautiful用来解析HTML比较简单,API人性化,支持CSS选择器,Python标准库中的HTML解析器,也支持lxml的xml解析器,Beautiful Soup 3已经停止开发,推荐使用Beautiful Soup 4,使用pip 安装:pip install beautifulsoup4
bs4在解析时依赖解析器:
Python标准库 BeautifulSoup(markup,‘html.parser’) Python内置标准库,执行速度适中,容错能力强
lxml HTML 解析器 BeautifulSoup(markup,‘lxml’) 速度快、文档容错能力强

示例
导入bs4库

from bs4 import BeautifulSoup

创建 Beautiful Soup 对象
soup = BeautifulSoup

打开本地HTML文件都方式来创建对象
soup = BeautifulSoup(open('index.html))

格式化输出soup对象的内容
print(soup.prettify())

findall()方法

name可以根据节点名查询
attrs可以根据节点属性查询
text用来匹配节点文本

获取属性 a.attrs['id]或者a['id]
获取文本 a.get_text()或者a.string

Pyquery解析库

pyquery库是 jQuery 的 Python 实现,能够以jQuery的语法来操作解析 HTML 文档,易用性和解析速度都很好
安装:
pip3 install pyquery
注意:pyquery依赖于lxml要先安装lxml,否则提示失败
pip3 install lxml
初始化:
有四种方法可进行初始化:可以通过传入字符串,lxml,文件或者url来使用PyQuery

在这里插入图片描述

python代码
在这里插入图片描述

其他操作

添加classaddClass(value)
判断是否包含指定的class返回true或flase.hasClass(value)
获取子元素.children()
获取父元素.parends()
获取下一个元素.next()
获取后面全部元素块.nextAll()
获取所有不匹配该选择器的元素.not_(sellector)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值