使用pyquery

PyQuery    了解前端学习PyQuery 会更容易

pyquery有三种引入html的方式

1.直接引入

html='.................'

from pyquey import PyQuery as pq

 doc=pq(html)

2.URL初始化

doc=pq(url:'https://www.baidu.com')

对于url还有一种方法

import request

from pyquery impot PyQuery

doc=PyQuery(request.get('https://www.baidu.com').text)

print(doc('li'))

3.文件初始化

from pyquery import PyQuery as pq

doc=pq(filename='demo.html)

print(doc('li'))

 

pyquery 基本和前端的jQuery一样选择类,添加类,移除类。

 

基本css选择器

ex:

from pyquery import PyQuery as pq

doc=pq(html)

print(doc('#id .class1 li'))

查找子节点

from pyquery import PyQuery as pq

doc=pq(html)

items=doc('.list')

lis= items.find('li')    find()查找的是所有的子孙节点

如果只想查找子节点

lis=items.childrn()

可以在查找的子节点中加入筛选

lis=items.children('.active')

 

父节点

con=items.parent()  直接的父节点

con=items.parents()  祖先节点

获取某个祖先节点

con=items.parents('.list')

 

 

兄弟节点

li=doc('.lis .item')

print(li.sibilings())

print(li.sibilings('.active'))    加入筛选

 

遍历调用items()方法:

from pyquery import PyQuery as pq 

doc =pq(html)

lis=doc('li').items()  调用items()方法会得到一个生成器

for i in lis:

  print(i)

 

 

获取信息

获取属性

from pyquery import PyQuery as pq 

doc=pq(html)

a=doc('.lis-0 .active a')

print(a.attr('href'))

也可以print(a.attr.href)

调用attr()方法虽然a有多个    但是只返回一个结果 因此需要调用items()方法

doc=pq(html)

a=doc('li')

for item in a.items():

  print(item.attr('href')

 

posted @ 2018-09-05 22:36  都是弟弟  阅读(519)  评论(0编辑  收藏  举报