CSS 选择器与Pyquery
一、CSS 选择器概览
使用CSS选择器来定位节点
二、CSS 选择器常规则
几个常用的路径表达式
选择器 | 例子 | 例子描述 |
---|---|---|
.class | .intro | 选择class=”intro”的所有节点 |
#id | #name | 选择id=”name” 的所有节点 |
* | * | 选择所有节点 |
element | p | 选择所有p 节点 |
element,element | div ,p | 选择所有 div 和 p 节点 |
element element | div p | 选择div节点内部的所有p节点 |
element>element | div > p | 选择父节点为div节点的所有p节点 |
element+lement | div +p | 选择父节点为div节点之后的所有p节点 |
……
三、PYQuery 安装
pip install pyquery
四、PYQuery初始化需要传入HTML文本来初始化一个PYQuery对象
1.字符窜初始化
html = '''
<div>
<ul>
<li></li>
</ul>
</div>
'''
from pyquery import PyQuery as pq
doc = pq(html)
print(doc('li'))
2.URL初始化
from pyquery import PyQuery as pq
doc=pq(url='https://www.taobao.com')
print(doc('title'))
3.文件初始化
from pyquery import PyQuery as pq
doc=pq(filename='demo.html')
print(doc('li'))
五、基本CSS选择器
eg:
```python
html = '''
<div>
<ul>
<li></li>
</ul>
</div>
'''
from pyquery import PyQuery as pq
doc = pq(html)
print(doc('#container .list li'))
```
六、查找节点
1. 子节点
`常用find()方法,此时传入的是CSS选择器 查找子孙节点 children()`
2. 父节点
`可以用 parent() 方法来获取某个节点的父节点 parents()获取祖节点 `
3. 兄弟节点
`使用sibling() 方法`
七、遍历
items() 方法进行遍历
八、获取信息
1.获取属性
attr()
2.获取文本
text()
九、伪类选择器
支持多重多样的伪类选择器