Home > Backend Development > Python Tutorial > Python中的jquery PyQuery库使用小结

Python中的jquery PyQuery库使用小结

WBOY
Release: 2016-06-16 08:44:10
Original
1551 people have browsed it

pyquery库是jQuery的Python实现,可以用于解析HTML网页内容,使用方法:

复制代码 代码如下:

from pyquery import PyQuery as pq

1、可加载一段HTML字符串,或一个HTML文件,或是一个url地址,例:
复制代码 代码如下:

d = pq("hello")
d = pq(filename=path_to_html_file)
d = pq(url='http://www.baidu.com') # 此处url必须写全

2、html() 和 text() ——获取相应的HTML块或文本块,例:
复制代码 代码如下:

p = pq("hello")
p('head').html()  # 返回hello
p('head').text()  # 返回hello

3、根据HTML标签来获取元素,例:
复制代码 代码如下:

d = pq('

test 1

test 2

')   
d('p')    # 返回[

,

]
print d('p')  # 返回

test 1

test 2


print d('p').html()  # 返回test 1

注意:当获取到的元素不只一个时,html()、text()方法只返回首个元素的相应内容块

4、eq(index) ——根据给定的索引号得到指定元素

接上例,若想得到第二个p标签内的内容,则可以:

复制代码 代码如下:

print d('p').eq(1).html()   # 返回test 2

5、filter() ——根据类名、id名得到指定元素,例:

复制代码 代码如下:

d = pq("

test 1

test 2

")
d('p').filter('#1')   # 返回[

]
d('p').filter('.2')   # 返回[

]

6、find() ——查找嵌套元素,例:
复制代码 代码如下:

d = pq("

test 1

test 2

")
d('div').find('p')   # 返回[

,

]
d('div').find('p').eq(0)  #返回[

]


7、直接根据类名、id名获取元素,例:
复制代码 代码如下:

d = pq("

test 1

test 2

")
d('#1').html() # 返回test 1
d('.2').html() # 返回test 2

8、获取属性值,例:
复制代码 代码如下:

d = pq("

hello

")
d('a').attr('href')  # 返回http://hello.com
d('p').attr('id')  # 返回my_id

9、修改属性值,例:
复制代码 代码如下:

d('a').attr('href', 'http://baidu.com')

10、addClass(value) ——为元素添加类,例:

复制代码 代码如下:

d = pq('
')
d.addClass('my_class')   # 返回[]

11、hasClass(name) #返回判断元素是否包含给定的类,例:
复制代码 代码如下:

d = pq("
")
d.hasClass('my_class')   # 返回True

12、children(selector=None) ——获取子元素,例:
复制代码 代码如下:

d = pq("

hello

world

")
d.children()   # 返回[

,

]
d.children('#2')   # 返回[

]


13、parents(selector=None)——获取父元素,例:
复制代码 代码如下:

d = pq("

hello

world

")
d('p').parents()    # 返回[]
d('#1').parents('span')   # 返回[]
d('#1').parents('p')   # 返回[]

14、clone() ——返回一个节点的拷贝

15、empty() ——移除节点内容

16、nextAll(selector=None) ——返回后面全部的元素块,例:

复制代码 代码如下:

d = pq("

hello

world

Python中的jquery PyQuery库使用小结")
d('p:first').nextAll()   # 返回[

, Python中的jquery PyQuery库使用小结]
d('p:last').nextAll()   # 返回[Python中的jquery PyQuery库使用小结]


17、not_(selector) ——返回不匹配选择器的元素,例:
复制代码 代码如下:

d = pq("

test 1

test 2

")
d('p').not_('#2')    # 返回[

]


更多内容,参考官网 http://packages.python.org/pyquery
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template