爬虫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文本的元素
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Mac 电脑连上 wifi 却打不开网页的解决办法

    Mac 电脑连上 wifi 却打不开网页的解决办法系统偏好设置–>网络–>高级–>代理–>取消代理☑️

    2022年6月22日
    96
  • 向量内积的矩阵表示为_列向量乘列向量的转置

    向量内积的矩阵表示为_列向量乘列向量的转置设x,y是两个相同个数分量的向量,则 表示x和y的内积。比如这页书就是这个意思:

    2022年9月16日
    0
  • Python修改文件后缀名[通俗易懂]

    Python修改文件后缀名[通俗易懂]读万卷书,行万里路——木子成记事本练习html,解决来回修改后缀名程序运行后项目文件夹下生成exe文件,后续双击exe文件即可修改可修改当前运行所在文件及其子文件中所有html和txt文件循坏修改后缀名”””name=os.path.splitext():分离文件名(name[0])和后缀name[1]os.rename(new_filename,old_filename):修改文件名,若不在最初工作地址则需更改os.listdir(文件地址):得到当前目录的所

    2022年9月22日
    0
  • 项目章程的内容有哪些?[通俗易懂]

    项目章程的内容有哪些?[通俗易懂]项目章程的内容有:1.项目目的或者批准项目的原因;2.可测量的项目目标和相关的成功标准;3.项目的总体要求;4.概括性的项目描述;5.项目的主要风险;6.总体里程碑进度计划;

    2022年8月2日
    8
  • DirBuster使用教程

    DirBuster使用教程工具是kali自带,多用于网站的后台扫描工具路径:/usr/share/dirbustercd/usr/share/dirbuster进入路径后ls查看,会看到目录下的jar文件:2.java-jarDirBuster-1.0-RC1.jar打开jar文件3.出现可视化窗口,配置很多,现在我们先填写空白的输入框部分,这里我们在第一个输入框填写扫描网站的url地址4….

    2025年7月21日
    0
  • WIN10永久激活工具 HWIDGEN[通俗易懂]

    WIN10永久激活工具 HWIDGEN[通俗易懂]WIN10永久激活工具HWIDGEN转 https://blog.52iss.com/index.php/soft/Windows10数字权利获取工具几乎秒杀所有版本Windows

    2022年8月4日
    3

发表回复

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

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