xpath中text和string的区别
时间: 2023-04-23 18:00:35 浏览: 254
Python爬虫之Xpath的text()与string(.)用法
在XPath中,text()和string()都是用来获取节点文本内容的函数,但是它们有一些不同之处。
text()函数只能获取当前节点的文本内容,而string()函数可以获取当前节点及其所有子节点的文本内容,并将它们连接起来。
举个例子,假设有以下XML文档:
```
<book>
<title>The Great Gatsby</title>
<author>F. Scott Fitzgerald</author>
<description>
The Great Gatsby is a novel by F. Scott Fitzgerald, first published in 1925.
</description>
</book>
```
如果我们想获取title节点的文本内容,可以使用以下XPath表达式:
```
/book/title/text()
```
这将返回"The Great Gatsby"。
如果我们想获取整个book节点的文本内容,可以使用以下XPath表达式:
```
string(/book)
```
这将返回"The Great GatsbyF. Scott FitzgeraldThe Great Gatsby is a novel by F. Scott Fitzgerald, first published in 1925.",即将所有子节点的文本内容连接起来。
因此,text()函数只能获取当前节点的文本内容,而string()函数可以获取当前节点及其所有子节点的文本内容,并将它们连接起来。
阅读全文