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 库的使用的更多相关文章

  1. python爬虫从入门到放弃(七)之 PyQuery库的使用

    PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ...

  2. 爬虫常用库之pyquery 库

    pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的.他的官方文档地址是:http://packages. ...

  3. Python中PyQuery库的使用总结

    介绍 pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,官方文档地址是:http://packages.python.org/pyquery/ pyquery 可让你用 ...

  4. Python爬虫-- PyQuery库

    PyQuery库 PyQuery库也是一个非常强大又灵活的网页解析库,PyQuery 是 Python 仿照 jQuery 的严格实现.语法与 jQuery 几乎完全相同,所以不用再去费心去记一些奇怪 ...

  5. PYTHON 爬虫笔记六:PyQuery库基础用法

    知识点一:PyQuery库详解及其基本使用 初始化 字符串初始化 html = ''' <div> <ul> <li class="item-0"&g ...

  6. 学习PyQuery库

    学习PyQuery库 好了,又是学习的时光啦,今天学习pyquery 来进行网页解析 常规导入模块(PyQuery库中的pyquery类) from pyquery import PyQuery as ...

  7. python之爬虫(九)PyQuery库的使用

    PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ...

  8. Python中PyQuery库的使用

    pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,我个人写过的一些抓取网页数据的脚本就是用它来解析html获取数据的. 它的官方文档地址是:http://packages ...

  9. PyQuery库

    '''强大又灵活的网页解析库.如果你觉得正则写起来太麻烦,又觉得BeautifulSoup语法太难记,如果你熟悉jQuery的语法,那么PyQuery就是你的绝佳选择.'''from pyquery ...

  10. 爬虫6:pyquery库

      强大又灵活的网页解析库,如果觉得正则写起来太麻烦,BeautifulSoup语法太难记,而你又熟悉jQuery的语法,那么用PyQuery就是最佳选择     一. 初始化 1. 字符串初始化 h ...

随机推荐

  1. 多目标优化算法(一)NSGA-Ⅱ(NSGA2)(转载)

    多目标优化算法(一)NSGA-Ⅱ(NSGA2) 本文链接:https://blog.csdn.net/qq_40434430/article/details/82876572多目标优化算法(一)NSG ...

  2. acl设置问题

    在学习nfs服务配置的时候用到了acl规则(服务配置文件权限设置可写,但是由于客户端映射,不能写入,所以要设置系统权限),但是遇到了一个小小的问题:一.当使用-x选项取消规则的时候,再次查看权限后面仍 ...

  3. 青岛和深圳,两座条件相似的城市,为何GDP相差这么大

    深圳和青岛,是一对非常有意思的城市.两者都是沿海城市:两者都是所在省的经济强市:两者都是副省级城市,但都不是省会:两者GDP都超过所在省的省会城市.当然,两个城市也有相当大的差距,一个位于南方,一个位 ...

  4. Linux 查看CPU和内存的使用情况

    Linux 查看CPU和内存的使用情况 如何查看Linux机器的CPU和内存的使用情况. 可以通过如下方式: 1.查看CPU和内存的实时使用情况 使用如下命令: top 命令执行后,效果如下(资源的使 ...

  5. jenkins报错解决

    https://www.cnblogs.com/yangxia-test/p/4368778.html https://blog.csdn.net/xlyrh/article/details/5138 ...

  6. Java类的加载及初始化

    每个类的编译代码都存在于它自己的独立文件中,该文件在需要使用该程序代码时才会被加载.通常有以下三种加载情况: (1) 访问了子类的静态变量或静态方法:仅对类的静态变量,静态块执行初始化操作,并仅初始化 ...

  7. 【JVM学习笔记】系统类加载器

    可以通过“java.system.class.loader"属性指定系统类加载器 默认情况下,该属性值为空: public class Test { public static void m ...

  8. python字典操作+文件操作+函数

    师从百测besttest今天老牛教了些函数调用的知识,布置了个作业如下: # 1.写一个商品管理的小程序# 2.商品存在文件里面# 1.添加商品# 输入产品名称.颜色.价格# 要校验商品是否存在,价格 ...

  9. MariaDB知识点总结02--日志+备份

    一.日志 1.查询日志 记录每一条sql语句,建议不开启,因为如果访问量较大,会占用相当大的资源,影响性能; vim /etc/my.cnf.d/server.cnf general_log = ON ...

  10. USACO 1.3 Name That Number【暴搜】

    裸的穷举搜索. 研究了好久怎么输入$dict.txt$,$USACO$好像对$freopen$的顺序还有要求? /* ID: Starry21 LANG: C++ TASK: namenum */ # ...