Python

Python基础(49) - 伪类选择器

2020-03-19  本文已影响0人  xianling_he

如何使用伪类选择器

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 包

hexianling.png
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)
hexianling.png

根据索引选择值

#索引小于2的li节点
li = doc('li:lt(2)')
print(li)
print('-'*20)

#索引大于3的li节点
li = doc('li:gt(3)')
print(li)
print('-'*20)
hexianling.png

根据节点基数,偶数选取值

#选取奇数li节点
li = doc('li:nth-child(2n+1)')
print(li)
print('-'*20)

#选取偶数li节点
li = doc('li:nth-child(2n)')
print(li)
hexianling.png

根据包含的关键字选取值

li = doc('li:contains(com)')
print(li)
hexianling.png

选取所有节点中包含com字符串的节点

li = doc(':contains(com)')
print(li)

总结

伪类选择器是CSS选择器的一类重要功能,这也是CSS选择器之所以强大的主要原因

上一篇 下一篇

猜你喜欢

热点阅读