xpath 后去title 标签内容 并且去掉 -后的内容
时间: 2024-02-05 21:45:21 浏览: 22
可以使用以下XPath表达式:
```
substring-before(normalize-space(//title), ' -')
```
解释:
1. `//title`:选择文档中的所有`<title>`元素。
2. `normalize-space()`:移除文本中的多余空格,并将多行文本合并为一行。
3. `substring-before()`:获取第一个参数字符串中第一个出现的第二个参数字符串之前的部分,即去掉字符串中的`-`及其后面的内容。
相关问题
xpath获取元素title内容
如果你想获取某个元素的title属性的值,可以使用如下的XPath表达式:
```
//元素名[@title]/@title
```
其中,将 `元素名` 替换为你想要获取title属性的元素的名称。这个XPath表达式会选取所有具有title属性的该元素,并返回它们的title属性的值。
例如,如果你想获取所有具有title属性的a元素的title属性的值,可以使用如下的XPath表达式:
```
//a[@title]/@title
```
这个XPath表达式会选取所有具有title属性的a元素,并返回它们的title属性的值。
去掉由xpath爬取内容的标签等无用数据
如果您使用XPath爬取网页内容,可以通过XPath表达式来筛选出需要的数据,而过滤掉无用的标签和数据。下面是一些常用的XPath表达式:
1. 选择所有节点:`//*`
2. 选择某个标签的所有节点:`//标签名`
3. 选择某个标签的某个属性的值为特定值的节点:`//标签名[@属性名='属性值']`
4. 选择某个标签的某个子标签的文本内容:`//标签名/子标签名/text()`
5. 选择某个标签的某个后代标签的文本内容:`//标签名//后代标签名/text()`
通过以上表达式,您可以选择需要的数据,并且可以通过在XPath表达式中加入条件来过滤掉无用的标签和数据。但是,如果您想要更精确地过滤标签和数据,可以考虑使用正则表达式来匹配和过滤。