如何使用伪类选择器
HTML 代码如下:
html = '''
<html>
<head>
<title>获取节点信息</title>
</head>
<body>
<div>
<ul>
<li class="item1" value1="1234" value2 = "hello world"><a href ="https://geekori.com">geekori.com</a></li>
<li class="item"><a href="href="https://www.jd.com">京东商城</a></li>
</ul>
<li id = "myTest" class="item3"><a href="href="https://www.taobao.com">淘宝</a></li>
<li class="item"><a href="href="https://www.microsoft.com">微软</a></li>
<li class="item"><a href="href="https://www.google.com">谷歌</a></li>
</ul>
</div>
</body>
'''
添加pyquery 包

import pyquery
from pyquery import PyQuery as pg
加载伪类选择器,并打印输出
- 代码如下:
doc = pg(html)
#选取第一个li节点
li = doc('li:first-child')
print(li)
print('-'*20)
#选取最后一个li 节点
li = doc('li:last_child')
print(li)
print('-'*20)
#选取第三个li节点
li = doc('li:nth-child(3)')
print(li)
print('-'*20)

根据索引选择值
- 根据索引选择li 节点
#索引小于2的li节点
li = doc('li:lt(2)')
print(li)
print('-'*20)
#索引大于3的li节点
li = doc('li:gt(3)')
print(li)
print('-'*20)

根据节点基数,偶数选取值
- 选取基数、偶数的li 节点
#选取奇数li节点
li = doc('li:nth-child(2n+1)')
print(li)
print('-'*20)
#选取偶数li节点
li = doc('li:nth-child(2n)')
print(li)

根据包含的关键字选取值
- 选择li节点中包含com的节点值
li = doc('li:contains(com)')
print(li)

选取所有节点中包含com字符串的节点
li = doc(':contains(com)')
print(li)
总结
伪类选择器是CSS选择器的一类重要功能,这也是CSS选择器之所以强大的主要原因
网友评论