python中parsel函数的用法
时间: 2023-10-03 13:03:49 浏览: 200
`parsel`是一个基于XPath和CSS选择器的网页解析库,可以用于提取网页中的数据。
首先需要安装`parsel`库:`pip install parsel`
使用示例:
```python
from parsel import Selector
html = """
<html>
<body>
<h1>Hello, ParSel!</h1>
<ul>
<li><a href="https://www.example.com">Example</a></li>
<li><a href="https://www.python.org">Python</a></li>
</ul>
</body>
</html>
"""
# 创建Selector对象
sel = Selector(text=html)
# 使用XPath选择器提取数据
title = sel.xpath('//h1/text()').get()
links = sel.xpath('//ul/li/a/@href')
print(title)
print(links.getall())
# 使用CSS选择器提取数据
title = sel.css('h1::text').get()
links = sel.css('ul li a::attr(href)').getall()
print(title)
print(links)
```
输出结果:
```
Hello, ParSel!
['https://www.example.com', 'https://www.python.org']
Hello, ParSel!
['https://www.example.com', 'https://www.python.org']
```
其中,`sel.xpath()`和`sel.css()`方法都返回一个`SelectorList`对象,可以使用`get()`方法获取第一个匹配项,或使用`getall()`方法获取所有匹配项。也可以使用`extract()`方法获取匹配项的原始文本。
除了基本的选择器之外,`parsel`还支持一些高级的选择器,如属性选择器、伪类选择器等,可以参考官方文档了解更多用法。
阅读全文
相关推荐

















