从HTML页面获取信息

时间:2013-09-27 16:16:32

标签: vb.net html-agility-pack

我是新手,我正在尝试了解如何从网页获取信息,我已经阅读了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显示页面内容,因为它显示了很多内容,并且在尝试在标签文本中显示内容时出错。)

对不好的英国人抱歉。

1 个答案:

答案 0 :(得分:0)

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

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

我希望这足以让你开始。