爬虫PyQuery「建议收藏」

爬虫PyQuery「建议收藏」–爬虫pyquery字符串初始化html=””” ……””””frompyqueryimportPyQueryaspqdoc=pq(html)print(doc(‘li’))–其实就是个css选择器,选出了所有的li标签url初始化frompyqueryimportPyQueryaspqdoc=pq(url=”http://www.baidu…

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

–爬虫pyquery
字符串初始化

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
print(doc('li'))  --其实就是个css选择器,选出了所有的li标签

url初始化

from pyquery import PyQuery as pq
doc=pq(url="http://www.baidu.com")
print(doc('head'))

文件初始化

from pyquery import PyQuery as pq
doc=pq(filename='demo.html')
print(doc('li'))

基本的css选择器

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
print(doc('#container.list li'))

#表示id
.表示class,其他的用空格

查找元素

子元素

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
items=doc('.list')
lis=items.find('li')
print(lis)

children()函数查找子直接子标签,可以传参

父元素

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
items=doc('.list')
container=items.parent()
print(container)

parents()是返回祖先标签,有几个祖先返回几个值

parent=items.parents(’.wrap’) #只返回符合条件的祖先
print(parent)

兄弟元素(siblings)

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
li=doc('.list .item-0.active')
print(li.siblings())

遍历

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
lis=doc('li').items()  --生成可遍历的对象,generator类型
for li in lis:
	print(li)

获取信息

获取属性

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
a=doc('.item-0.active a')
print(a)
print(a.attr('href'))或者a.attr.href

获取文本

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
a=doc('.item-0.active a')
print(a)
print(a.text())

获取html

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
a=doc('.item-0.active')
print(a)
print(a.html())

DOM操作
删除增加类 removeClass addClass

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
li=doc('.item-0.active')
print(li)
li.removeClass('active')#在原文中把active这个单词删除了
print(li)
li.addClass('active')
print(li)

修改attr,css

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
li=doc('.item-0.active')
print(li)
li.attr('name','link')
print(li)
li.css('font-size','14px')
print(li)

remove:

html="""
	<div class="wrap">
		hello world
		<p></p>
	</div>
"""
from pyquery import PyQuery as pq
doc=pq(html)
wrap=doc('.wrap')
print(wrap.text())  #这样直接用text会把p标签也提取出来
wrap.find('p').remove() #如果你想只提取文字,那么你就要删除p标签
print(wrap.text())

伪类选择器

html="""
	......
""""
from pyquery import PyQuery as pq
doc=pq(html)
li=doc('li:first-child')#获取li的第一个元素
li=doc('li:last-child') #获取最后一个元素
li=doc('li:nth-child(2)')#获取指定位置的元素,从1开始
li=doc('li:gt(2)')#序号大于2的,从0开始
li=doc('li:nth-child(2n)')#序号是偶数的元素
li=doc('li:contains(second)')#包含second文本的元素
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133426.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • intellij+idea+激活码【最新永久激活】2022.03.05

    (intellij+idea+激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html…

  • 激活函数-Sigmoid, Tanh及ReLU

    什么是激活函数在神经网络中,我们会对所有的输入进行加权求和,之后我们会在对结果施加一个函数,这个函数就是我们所说的激活函数。如下图所示。为什么使用激活函数我们使用激活函数并不是真的激活什么,这只是一个抽象概念,使用激活函数时为了让中间输出多样化,能够处理更复杂的问题。如果不适用结果函数的话,每一层最后输出的都是上一层输入的线性函数,不管加多少层神经网络,我们最后的输出也只…

  • PLSQL基本操作手册

    PLSQL基本操作手册公众号:池哥搬砖QQ1群:745460286个人WX公号:目录第1章用PLSQL连接Oracle数据库§1.2登录信息保存功能设置:§1.3进入PLSQL后切换数据库连接:第2章PLSQL中编写SQL语句并执行第3章PLSQL中查看数据库表结构§3.1查看表结构:§3.2表结构窗口和SQL编写窗口切换:第4章…

  • ElasticSearch安装&安装成windows服务

    ElasticSearch安装&安装成windows服务ElasticSearch安装&安装成windows服务

  • 页面刷新的reload()和refresh()方法有什么不同

    页面刷新的reload()和refresh()方法有什么不同window.reload是重新加载当前需要的所有内容,也就包括页面和后台的代码,此过程中实际上是从后台重新进行操作;window.Refresh是刷新,保留之前的缓存内容,重新加载页面,之前存在的东西不会动,没加载上来的东西继续加载,也会去加载后台代码内容的。

  • idea2021.8激活码[免费获取]

    (idea2021.8激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.cn/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~BI…

发表回复

您的电子邮箱地址不会被公开。

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