pyquery学习笔记[通俗易懂]

pyquery学习笔记[通俗易懂]frompyqueryimportPyQueryaspqdata=”’豆瓣

大家好,又见面了,我是你们的朋友全栈君。

from pyquery import PyQuery as pq
data = '''
<ul class="qqq">
<li class="1"><a data-moreurl-dict='{
  
  "from":"top-nav-click-main","uid":"0"}' href="https://www.douban.com" target="_blank">豆瓣</a></li>
<li class="on off"><a data-moreurl-dict='{
  
  "from":"top-nav-click-book","uid":"0"}' href="https://book.douban.com">读书</a></li>
<li class="2"><a data-moreurl-dict='{
  
  "from":"top-nav-click-movie","uid":"0"}' href="https://movie.douban.com" target="_blank">电影</a></li>
</ul>
'''

初始化

doc = pq(data)
print(doc('li'))
url初始化
doc = pq(url='http://www.baidu.com')
print(doc('head'))
文件初始化
doc = pq(filename='demo.html')
print(doc('head'))

基本CSS选择器

doc = pq(data)
items = doc('.qqq')
print(items)
print('-------------')
a = items.find('li')
print(a)

获取兄弟元素(不包括自己)

doc = pq(data)
li = doc.find('.on.off')
print(li.siblings())
doc = pq(data)
获取父元素
li = doc.find('.on')
print(li.parent())

遍历

doc = pq(data)
li = doc('li').items()
for i in li:
    print(i)
    print('---')
doc = pq(data)
a = doc('.on.off a')
print(a)

获取属性

print(a.attr('href'))
print(a.attr.href)

获取文本

print(a.text())

获取html

b = doc('.on.off')
print(b)
print(b.html())

dom操作

doc = pq(data)
li = doc('.on.off')
print(li)
li.remove_class('on')
print(li)
li.add_class('WWW')
print(li)
li.attr('name','linkkk')
print(li)
li.css('font-size','14px')
print(li)

remove

html = ''' <div class="wrap"> Hello world <p>hahahahahahaahhahaha</p> </div> '''
doc = pq(html)
wrap = doc('.wrap')
print(wrap.text())
wrap.find('p').remove()
print(wrap.text())
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/135376.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月5日 上午11:00
下一篇 2022年6月5日 上午11:16


相关推荐

  • (四)概率

    (四)概率

    2021年11月16日
    80
  • @JSONField 注解说明

    @JSONField 注解说明导入 JSONField 注解 importcom alibaba fastjson annotation JSONField 一 常见用法 1 指定字段的名称 JSONField name role name privateStrin 2 使用 format 制定日期格式 publicclassA 配置 d

    2026年3月18日
    2
  • StringUtils.isBlank_StringBuilder

    StringUtils.isBlank_StringBuilderStringUtils.isNotBlank()

    2022年8月12日
    12
  • IDEA热部署设置「建议收藏」

    IDEA热部署设置「建议收藏」转载位置:https://blog.csdn.net/nihao12323432/article/details/82664601

    2022年6月13日
    37
  • NMS——非极大值抑制

    NMS——非极大值抑制NMS nonmaximumsu 中文名非极大值抑制 在很多计算机视觉任务中都有广泛应用 如 边缘检测 目标检测等 这里主要以人脸检测中的应用为例 来说明 NMS 并给出 Matlab 和 C 示例程序 人脸检测的一些概念 1 绝大部分人脸检测器的核心是分类器 即给定一个尺寸固定图片 分类器判断是或者不是人脸 2 将分类器进化为检测器的关键是 在原始图像上从多个尺度产生窗口

    2026年3月26日
    2
  • eigen库安装vs_捷达vs5顶配啥配置

    eigen库安装vs_捷达vs5顶配啥配置(一)在官网下载所需版本的Eigen库,可查找历史版本Eigen(二)找到所需版本,下载压缩包,并解压(三)打开解压后的文件,复制路径D:\library\eigen-3.3.4(四)在vs的项目中点击“属性”——“C/C++”——“常规”——“附加包含目录”,添加路径D:\library\eigen-3.3.4(五)如果不想每次都添加路径的话,可以在属性管理器中添加属性表,然后在属性表的包含目录中添加路径D:\library\eigen-3.3.4,在其他项目需要使用Eigen库时,直接添加现有属性表即

    2022年10月9日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号