pyquery 库的使用
from pyquery import PyQuery as pq
# 文件勿命名为 pyquery.py,会发生冲突
# 字符串初始化
html = '''
<div id="page">
<div id="car_test">
<ul class="menu-list">
<li class="icon1"><a href="link1.html">科目一</a></li>
<li class="icon2"><a href="link2.html">科目二</a></li>
<li class="icon3 subject"><a href="link3.html">科目三</a></li>
<li class="icon4"><a href="link4.html">科目四</a></li>
<li class="buy car"><a href="link4.html">买车</a></li>
</ul>
</div>
</div>
'''
doc = pq(html)
print(doc('li'))
# url初始化
doc = pq(url='https://www.jiakaobaodian.com/')
print(doc('title'))
# 文件初始化
doc = pq(filename='demo.html')
print(doc('li'))
# 基本 CSS 选择器
doc = pq(html)
print(doc('#car_test .menu-list li'))
print(type(doc('#car_test .menu-list li')))
# 当需要用 class 且名称内容有空格时,”.“表示并列
print(doc('.menu-list .icon3.subject, .buy.car'))
# 查找节点
doc = pq(html)
items = doc('.menu-list')
print(type(items))
print(items)
# find() 查找节点里的所有子孙节点
link_list = items.find('a')
print(type(link_list))
print(link_list)
print('\n')
# children() 查找节点里的子节点
menu_list = items.children()
print(menu_list)
last_li = items.children('.buy.car')
print(last_li)
# parent() 父节点
car_test = items.parent()
print(type(car_test))
print(car_test)
# parents() 祖先节点,此处输出 class 为 page 和 car_test 的两个节点
parents = items.parents()
print(parents)
# siblings() 兄弟节点
li = doc('.menu-list .icon3.subject')
print(li.siblings())
# 遍历
doc = pq(html)
menu_list = doc('li').items()
print(type(menu_list))
for li in menu_list:
print(li, type(li))
# 获取信息
doc = pq(html)
a = doc('.icon3.subject a')
b = doc('.icon4')
# 获取属性,此处为 class_
print(a.attr.href)
print(b.attr.class_)
# 获取文本,html() 返回节点内所有代码
print(type(a.text()))
print(a.text())
print(b.text())
print(b.html())
参考资料:静觅 » [Python3网络爬虫开发实战] 4.3-使用pyquery
pyquery 库的使用的更多相关文章
- python爬虫从入门到放弃(七)之 PyQuery库的使用
PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ...
- 爬虫常用库之pyquery 库
pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的.他的官方文档地址是:http://packages. ...
- Python中PyQuery库的使用总结
介绍 pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,官方文档地址是:http://packages.python.org/pyquery/ pyquery 可让你用 ...
- Python爬虫-- PyQuery库
PyQuery库 PyQuery库也是一个非常强大又灵活的网页解析库,PyQuery 是 Python 仿照 jQuery 的严格实现.语法与 jQuery 几乎完全相同,所以不用再去费心去记一些奇怪 ...
- PYTHON 爬虫笔记六:PyQuery库基础用法
知识点一:PyQuery库详解及其基本使用 初始化 字符串初始化 html = ''' <div> <ul> <li class="item-0"&g ...
- 学习PyQuery库
学习PyQuery库 好了,又是学习的时光啦,今天学习pyquery 来进行网页解析 常规导入模块(PyQuery库中的pyquery类) from pyquery import PyQuery as ...
- python之爬虫(九)PyQuery库的使用
PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ...
- Python中PyQuery库的使用
pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的. 它的官方文档地址是:http://packages ...
- PyQuery库
'''强大又灵活的网页解析库.如果你觉得正则写起来太麻烦,又觉得BeautifulSoup语法太难记,如果你熟悉jQuery的语法,那么PyQuery就是你的绝佳选择.'''from pyquery ...
- 爬虫6:pyquery库
强大又灵活的网页解析库,如果觉得正则写起来太麻烦,BeautifulSoup语法太难记,而你又熟悉jQuery的语法,那么用PyQuery就是最佳选择 一. 初始化 1. 字符串初始化 h ...
随机推荐
- CI框架对HTML输入的处理/CI框架引用ueditor时对提交内容的默认处理
项目里近期用到了富文本编辑器,可是写入数据的时候总是写入, <p xss="removed">内容</p> 所有的样式都会被改写成这样,xss=" ...
- selenium死活定位不到元素以及radio单选框点击不生效
今天操作一个单选框浪费太多时间,现在其实很简单得东西,记录一下: 1,问题一,定位不到 如图,使用selenium IDE和xpath helper都试过,无法成功定位到这个单选框,实际上是因为,这个 ...
- SQL语句之数据定义语言(DDL)详解
操作对象:数据库 1)创建数据库 MariaDB [(none)]> help create databaseName: 'CREATE DATABASE'Description:Syntax: ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_2-3.热部署在Eclipse和IDE里面的使用
笔记 3.热部署在Eclipse和IDE里面的使用 简介:讲解热部署的好处及使用注意事项,在eclipse里面默认开启,在IDE里面默认关闭 1.增加依赖 & ...
- list中包含多个相同值时,List中的indexOf(Object o)方法的返回值
查一下Java API,List下的indexOf(Object o)方法的返回值为list列表中首个元素出现位置的索引,找不到时返回-1
- SpringBoot: 6.文件上传(转)
1.编写页面uploadFile.html <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- Rowlock、UPDLOCK
ROWLOCK 使用行级锁,而不使用粒度更粗的页级锁和表级锁. UPDLOCK 读取表时使用更新锁,而不使用共享锁,并将锁一直保留到语句或事务的结束.UPDLOCK 的优点是允许您读取数据(不阻塞 ...
- 20190903 - CSDN 的奇葩替换
可能是出于安全原因 CSDN 对内容中的代码,作了很多奇葩的替换. 比如下面两行,是否有差别? # - # -16 有.其实 cut 后的短横线,内部编码不同,前者复制后无法被识别. 再比如下面两个词 ...
- Django-DRF(路由与扩展功能)
一. 视图集与路由的使用 使用视图集ViewSet,可以将一系列逻辑相关的动作放到一个类中: list() 提供一组数据 retrieve() 提供单个数据 create() 创建数据 update( ...
- C语言递归之翻转二叉树
题目描述 翻转一棵二叉树. 示例 输入: / \ / \ / \ 输出: / \ / \ / \ 题目要求 /** * Definition for a binary tree node. * str ...