千家信息网

python中pyquery怎么用

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下python中pyquery怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、pyquery的介绍
千家信息网最后更新 2026年11月03日python中pyquery怎么用

小编给大家分享一下python中pyquery怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、pyquery的介绍

使用pyquery需要在Web和了解jQuery的基础上,使用该CSS选择器。

二、pyquery的使用

1、初始化工作

使用pyquery初始化的方式有很多,传入的参数可以是字符串,也可以是URL和文件名,下面将一一介绍初始化方法。

字符串
html = '''    test02.html    
'''from pyquery import PyQuery as pqdoc = pq(html)print(doc('title'))

【运行结果】

test02.html

URL

URL以CSDN首页地址为例:

from pyquery import PyQuery as pqdoc = pq(url = 'https://www.csdn.net/')print(doc('title'))

【运行结果】

CSDN - 专业开发者社区

文件初始化

我们将以下字符串保存为一个HTML文件,通过文件的形式进行初始化。

【test02.html】

      Harry Potter    29.99        Learning XML    39.95  
from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')print(doc('title'))

【运行结果】

Harry Potter
Learning XML

2、查找节点

(1)查找子节点

查找子节点时需要用到find()方法,此时传入的参数是CSS选择器。

from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')item = doc('book')print(item)lis1 = item.find('title')lis2 = item.find('price')print(lis1)print(lis2)

【运行结果】


Harry Potter
29.99


Learning XML
39.95

Harry Potter
Learning XML

29.99
39.95
可以看到,我们首先匹配的是book节点,然后匹配book节点下的子节点title和price。

其实使用find方法匹配的是所有的子孙节点,如果只是单纯匹配子节点可以使用children方法。

(2)匹配父节点

使用parent()方法,如果是要匹配祖先节点,则需要使用parents()方法。

(3)匹配兄弟节点

可以使用siblings()方法。

3、遍历

对于获取到的内容如果是单个节点,则可以直接转换为字符串类型,而对于获取到多个节点,因其类型为PyQuery类型,需要对获取到的数据进行遍历,这是需要调用items()方法。

from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')items = doc('title').items()print(items)print(type(items))for i in items:    print(type(i))    print(i)

【运行结果】




Harry Potter


Learning XML

4、获取信息

(1)获取属性

使用attr()方法

from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')items = doc('title')for i in items.items():    print(i.attr('lang'))

【运行结果】

eng
eng

遍历获取到的数据,就能获得所有title节点的land属性值。

(2)获取文本

使用text()方法

from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')items = doc('title')for i in items.items():    print(i.text())

【运行结果】

Harry Potter
Learning XML

同样是遍历,获取到每一个title节点的文本值。

5、节点操作

(1)为某个节点添加或删除一个class

调用的方法为addClass和removeClass

from pyquery import PyQuery as pqdoc = pq(filename = 'test02.html')items = doc('title')for i in items.items():    print(i)    i.addClass('book01')    print(i)    i.removeClass('book01')    print(i)

【运行结果】

Harry Potter

Harry Potter

Harry Potter

Learning XML

Learning XML

Learning XML

可以看到,首先是打印最初始的title节点,加上class属性后再次打印,去掉class属性后再次打印。

(2)attr、text、html

attr:用来改变属性值;

text:用来改变文本值;

html:用来改变节点值;

(3)remove

移除不需要的节点值,将整个节点移除。

6、伪类选择器

支持多种伪类选择器,例如选择第一个节点、最后一个节点、奇数节点、偶数节点、以及包含指定文本的节点等。

以上是"python中pyquery怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

节点 方法 结果 运行 属性 选择 字符 字符串 文件 文本 内容 篇文章 类型 再次 参数 数据 不怎么 专业 信息 偶数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 为想互联网科技怎么样 厦门中拓互联网络科技有限公司 互联网科技开发公司 广州互联网科技公司 互联网科技英文 奇酷互联网络科技 广西互联网科技公司 兼蜜互联网科技 左右互联网络科技 中国互联网金融科技基金 昭通云南众福互联网科技有限公司 互联网系的金融科技公司 上海宁丞科技互联网 搜狐科技互联网 速维有品互联网信息科技(苏州)有限公司 洛阳昕诺飞互联网科技有限公司 浙南科技城互联网大厦建设工程 卓翼科技产业互联网合作 伍佰万互联网科技怎么赚钱 卡尔迅互联网科技有限公司 互联网与科技金融数据 智网互联网科技 互联网科技公司官网 互联网科技股午盘股票涨跌 科技互联网大厂 未来五年的互联网科技 工业互联网科技成果转化 北京天晋互联网科技有限公司 北京军民互联网科技公司 山东亿川互联网科技有限责任公司
0