0

我有一个问题(也许是假的)。假设我在一个带有一堆其他东西(其他脚本标签和 html 标签)的 html 页面中有以下代码片段:

<script type="text/javascript">
    var count = 0;
    var active = false;
    var mapData = **{"points":   [{"type":"origin","name":"6003","lnglat":"174.77851504231018,-41.278763329010459,0\n"}]}**;
</script>

而且我只想抓取 mapData 变量的内容(在上面的示例中以粗体显示)。

我正在努力使用我需要在我的 xml 配置文件中使用的 xpath 表达式来仅获取 mapData 变量内容。由于我是 XPath/Web-harvest 的新手,我不确定该解决方案是使用 xpath 表达式还是其他方法。

一直以来,我的抓取都是基于 HTML 标签和其中的 id 属性的名称,但现在我在文件中只有很多脚本标签,我需要获取 mapData 变量。

有什么想法吗?

4

1 回答 1

0

请尝试使用 ${SiteURL} 是您要访问的网站 URL:

<xpath expression="for $m in $x//script[contains(text(),'var mapData')] return normalize-space(substring-after($m,'var mapData ='))">
        <html-to-xml>
          <http url="${SiteURL}"/>
        </html-to-xml>
      </xpath>
于 2013-11-01T07:15:43.503 回答