为什么此XPath选择链接而不是href值?

时间:2019-05-04 20:29:03

标签: c# xpath html-agility-pack

我正在关注这个问题的答案:How to obtain href values from a div using xpath?

答案声称正在使用的XPath查询从链接中获取href值,但是我的代码似乎并非如此。为了澄清,这是公认的答案:

//div[@class="widget-content"]//a/@href

我的XPath如下:

//tr/td//a/@href

这似乎只是选择链接,而不是href值。

enter image description here

因此,在这种情况下,我必须使用一个foreach循环来选择href值。

foreach(var link in links)
{
    var hrefValue= link.Attributes["href"].Value;
}

第一个问题,为什么会这样?第二个问题,有没有办法直接获取href值?

进一步了解。我正在尝试从HTML表中选择所有href值。

编辑:我正在尝试解析的HTML示例:http://www.realtimetrains.co.uk/train/W90778/2019/04/29/advanced

1 个答案:

答案 0 :(得分:0)

使用以下Xpath提取所有元素,然后使用attribute方法获取所有href。

"//table[@class='table table-condensed train  realtime  advanced']//tr//td//span/a"

或者,如果您想以tr开头。

"//tr//td//span/a"
相关问题