0

我是新手,我正在尝试了解如何从网页获取信息,我已经阅读了有关 HtmlAgilityPack 并且正在使用它,但是在尝试了解如何做到这一点 2 天后,我在这里问求助。

好的,事情是:我想从页面中读取一些信息并将其写入标签文本中。

我将用作示例的页面是:http ://www.tibia.com/community/?subtopic=characters&name=Huur 我想在不同的标签中显示级别、职业和公会信息......但是,所有我得到的是:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim myWeb As HtmlWeb = New HtmlWeb
    Dim myDoc = myWeb.Load("http://www.tibia.com/community/?subtopic=characters&name=" & TextBox1.Text.Trim())
    Dim myRoot As HtmlNode = myDoc.DocumentNode
    Dim myElements As List(Of HtmlElement) = New List(Of HtmlElement)
    Dim MainContentArea As HtmlNode

    myWeb.Load("http://www.tibia.com/community/?subtopic=characters&name=" & TextBox1.Text.Trim())
    MainContentArea = myDoc.GetElementbyId("characters")

    TextBox2.Text = MainContentArea.InnerHtml
End Sub

正如你们所看到的,我找到了一种阅读所有角色信息的方法,但我不知道如何找到我想要的东西:级别、职业和公会信息,并在不同的标签文本中显示。

你们能帮帮我吗?:}

(在代码中,我使用 Textbox2.Text 来显示页面内容,因为它显示了很多内容,并且在尝试在标签文本中显示内容时出现错误。)

对不起英语不好的家伙。

4

1 回答 1

0

首先,如果您不熟悉xpath ,我建议您查看它。其次,你需要弄清楚你的html结构。您可以使用 Firefox 并转到您要查找的内容并右键单击检查元素。它将列出文档的结构,并为您提供可用于xpath.

例如,如果您想获得级别,您可以使用 "/html/body//div[@class='BoxContent'/table/body/tr[td='Level:']/td" 来获取包含的元素级别指示器,然后移动到HtmlNode.NextSibling以获取其文本包含您正在查找的级别值的下一个元素。

我希望这足以让你开始。

于 2013-10-04T01:39:56.820 回答