,用xpath匹配年、月、日
时间: 2023-06-26 07:03:31 浏览: 50
假设你有一个HTML文档,其中包含一个日期,如下所示:
```html
<div class="date">2022-01-10</div>
```
你可以使用XPath来匹配这个日期中的年、月、日。具体方法如下:
```python
from lxml import etree
# 解析HTML文档
html = etree.parse("example.html")
# 获取日期节点
date_node = html.xpath("//div[@class='date']")[0]
# 获取年、月、日
year = date_node.text.split("-")[0]
month = date_node.text.split("-")[1]
day = date_node.text.split("-")[2]
print("Year:", year)
print("Month:", month)
print("Day:", day)
```
在上面的代码中,我们首先使用`etree.parse()`函数解析HTML文档,并用`xpath()`方法获取日期节点。然后,我们将日期字符串按照“-”分割,获取年、月、日。最后,我们输出这三个值。
如果你想在XPath中直接获取年、月、日,可以使用如下代码:
```python
year = html.xpath("//div[@class='date']/text()")[0][:4]
month = html.xpath("//div[@class='date']/text()")[0][5:7]
day = html.xpath("//div[@class='date']/text()")[0][8:]
```
在上面的代码中,我们直接在XPath中使用`text()`函数获取日期字符串,并用切片操作获取年、月、日。