python的xpath提取
时间: 2023-10-31 10:59:03 浏览: 167
Python使用xpath实现图片爬取
Python中可以使用XPath提取HTML或XML文档中的数据。以下是一个简单的示例:
```python
from lxml import etree
# 构建HTML文档
html = '''
<html>
<body>
<div>
<ul>
<li><a href="http://example.com/page1">Page 1</a></li>
<li><a href="http://example.com/page2">Page 2</a></li>
<li><a href="http://example.com/page3">Page 3</a></li>
</ul>
</div>
</body>
</html>
'''
# 使用lxml库解析HTML文档
root = etree.HTML(html)
# 使用XPath提取数据
links = root.xpath('//a/@href')
titles = root.xpath('//a/text()')
# 输出结果
print(links)
print(titles)
```
输出结果:
```
['http://example.com/page1', 'http://example.com/page2', 'http://example.com/page3']
['Page 1', 'Page 2', 'Page 3']
```
在上面的示例中,我们首先将HTML文档作为字符串传递给`etree.HTML()`函数,获得一个lxml的Element对象。然后,我们使用XPath表达式`//a/@href`和`//a/text()`分别提取所有`<a>`标签的`href`属性和文本内容,并将结果存储在`links`和`titles`列表中。最后,我们将结果输出到控制台。
阅读全文