python中xpath
时间: 2023-07-06 15:40:26 浏览: 93
Python中可以使用lxml库来处理和解析XML和HTML文档,并使用XPath表达式来获取节点信息。下面是一个简单的例子,演示如何使用lxml和XPath来获取HTML文档中的节点信息:
```python
from lxml import html
# 定义HTML文档
html_doc = """
<html>
<head>
<title>Python XPath Demo</title>
</head>
<body>
<div>
<h1>Python XPath Demo</h1>
<p class="intro">This is a demo of XPath in Python.</p>
<ul class="list">
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
</div>
</body>
</html>
"""
# 解析HTML文档
tree = html.fromstring(html_doc)
# 使用XPath表达式获取节点信息
title = tree.xpath('//title/text()')[0]
intro = tree.xpath('//p[@class="intro"]/text()')[0]
items = tree.xpath('//ul[@class="list"]/li/text()')
# 输出节点信息
print("Title:", title)
print("Intro:", intro)
print("Items:", items)
```
输出结果如下:
```
Title: Python XPath Demo
Intro: This is a demo of XPath in Python.
Items: ['Item 1', 'Item 2', 'Item 3']
```
在上面的例子中,我们使用`html.fromstring()`函数将HTML文档解析为一个XML树,然后使用`xpath()`方法根据XPath表达式来获取节点信息。XPath表达式可以使用`/`、`//`、`[]`、`@`等符号来定位节点,具体语法可以参考XPath的相关文档。
阅读全文