如何从href属性获取URL

时间:2017-12-26 21:24:23

标签: vb.net xpath html-agility-pack

我无法从href属性获取网址。 我用这个代码

Dim url As String = "http://example.com/"
Dim web As New HtmlWeb()
Dim doc As HtmlDocument = web.Load(url)

For Each item As HtmlNode In doc.DocumentNode.SelectNodes("//a/@href")
    If Not item Is Nothing Then
        Response.Write(item.OuterHtml)
    End If
Next

但它不起作用。

1 个答案:

答案 0 :(得分:2)

由于href是一个属性,您需要将其放在方括号[]

当您通过它们搜索时,请记住属性进入方括号。

//a[@href]

在您的情况下,您需要获取所有//a个节点,然后检查HasAttributes("href"),最后获取Attributes("href")

For Each item As HtmlNode In doc.DocumentNode.SelectNodes("//a")
    If Not item Is Nothing And item.HasAttributes("href") Then
        Response.Write(item.Attributes("href").Value)
    End If
Next