xpath 使用 demo
时间: 2023-07-04 11:27:32 浏览: 48
好的,以下是一个简单的 XPath 使用示例:
假设我们有一个 HTML 页面,其中包含以下结构:
```html
<html>
<body>
<div id="content">
<h1>这是标题</h1>
<ul>
<li>第一条内容</li>
<li>第二条内容</li>
<li>第三条内容</li>
</ul>
</div>
</body>
</html>
```
我们想要提取这个页面中的第二条内容,可以使用以下 XPath 表达式:
```xpath
/html/body/div[@id="content"]/ul/li[2]/text()
```
这个表达式的意思是:
- `/html/body/div[@id="content"]`:从 HTML 根节点开始,选择 body 元素下的 id 属性为 content 的 div 元素。
- `/ul/li[2]`:在选中的 div 元素下,选择第二个 li 元素。
- `/text()`:获取该 li 元素的文本内容。
使用 Python 的 lxml 库,我们可以用以下代码提取出这个内容:
```python
from lxml import etree
html = """
<html>
<body>
<div id="content">
<h1>这是标题</h1>
<ul>
<li>第一条内容</li>
<li>第二条内容</li>
<li>第三条内容</li>
</ul>
</div>
</body>
</html>
"""
tree = etree.HTML(html)
result = tree.xpath('/html/body/div[@id="content"]/ul/li[2]/text()')
print(result)
```
输出结果为:
```
['第二条内容']
```
希望这个示例可以帮到你!