5

我在使用 XPath 和 import.io 时遇到了一些问题,希望您能帮助我。:)

html代码:

<a href="page.php?var=12345">

目前,我设法通过以下方式提取 href (page.php?var=12345)的内容:

./td[3]/a[1]/@href

不过,我只想收集:12345

substring 可能是解决方案,但它似乎不适用于 import.io,因为我使用它......

substring(./td[3]/a[1]/@href,13)

关于问题是什么的任何想法?

非常感谢!

4

2 回答 2

7

尝试将其用于 xpath:(将字段选为文本)

.//*[@class='oeil']/a/@href

然后将其用于您的正则表达式:

([^=]*)$

这将为您提供您正在寻找的 ISBN 号。

import.io 仅在返回节点列表时支持 XPath 中的函数

于 2015-04-15T02:46:40.013 回答
1

您的路径表达式很好,但也许应该是

substring(./td[3]/a[1]/@href,14)

“似乎不起作用”并不是对错误的非常清楚的描述。您收到错误消息吗?输出错了吗?你有围绕你可以显示的路径表达式的任何代码吗?


您可以使用子字符串,但使用substring-after()会更好。

substring-after(/a/@href,'=')

假设您显示的小片段作为输入:

<a href="page.php?var=12345"/>

会选择

12345

并考虑到您输入的结构

substring-after(./td[3]/a[1]/@href,'=')

.路径表达式中的前导仅选择td当前上下文节点的直接子节点。我相信你知道你在做什么。

于 2015-04-14T20:18:12.577 回答