前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pyquery用法全面总结

pyquery用法全面总结

作者头像
云雀叫了一整天
发布2019-11-26 22:42:19
6070
发布2019-11-26 22:42:19
举报
文章被收录于专栏:Hi, PythonHi, Python

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_40313634/article/details/103099902

  1. 如下, 根据属性值,提取节点
代码语言:javascript
复制
<html>
    <li class="name">zuoy</li>
    <li class="age">21</li>
    <li id="name">zhangsan</li>
    <li id="age">18</li>
</html>
代码语言:javascript
复制
# 按照属性值,提取姓名
doc = pq(html)
doc('.class').text()  ## zuoy
doc('#name').text()  ## zhangsan

# 或者这样写也行
doc('[class="name"]').text()  ## zuoy
doc('[id="name"]').text()  ## zhangsan
  1. 如下, 提取没有此属性、和又此属性的节点
代码语言:javascript
复制
<html>
    <li class="name">zuoy</li>
    <li id="name">zhangsan</li>
</html>
代码语言:javascript
复制
doc = pq(html)

# 提取有 class 属性的节点
doc('li[class]').text()  ## zuoy

# 提取没有 class 属性的节点
doc('li:not([class])').text()  # zhangsan
  1. 模糊匹配
代码语言:javascript
复制
<html>
    <li class="first name">zuo</li>
    <li class="name last">y</li>
</html>
代码语言:javascript
复制
doc = pq(html)

# 首端匹配
doc('li[class^="first"]').text()  ## zuo

# 末端匹配
doc('li[class$="last"]').text()  ## y

# 包含
doc('li[class*="name"]').text()  ## zuo y
  1. 根据内容关键字,匹配节点
代码语言:javascript
复制
<html>
    <li class="text">张三中奖了</li>
    <li class="text">李四结婚了</li>
</html>
代码语言:javascript
复制
doc = pq(html)
doc('li:contains("张三")').text()  # 张三中奖了
  1. 节点有多个属性值时,如何匹配?与、或、非
代码语言:javascript
复制
<html>
    <li class="text" name="张" id="三"> 张三中奖了</li>
    <li class="text" name="李" id="四"> 李三结婚了</li>
    <li id="三"> 张三要饭了</li>
</html>
代码语言:javascript
复制
doc = pq(html)

# 与运算
doc('li[class][name="张"]').text()  # 张三中奖了

# 或运算
doc('[class][name="张"], [class][id="三"]').text()  # 张三中奖了

# 非运算
doc('li:not([class])').text()  # 张三要饭了
  1. 提取节点内容或属性值
代码语言:javascript
复制
<html>
    <li1 class="text"> 张三中奖了</li>
    <li2 text="李四结婚了"></li>
</html>
代码语言:javascript
复制
doc = pq(html)

# 提取节点值
doc('li1').text()  ## 张三中奖了

# 提取属性值
doc('li2').attr.text  ## 李四结婚了
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档