尝试获取input / getelementbyID或Class并放入richtextbox

时间:2011-12-05 02:44:55

标签: .net html-parsing html-agility-pack

我目前正在使用HtmlAgility Pack为表单输入标签解析一些HTML,然后获取ID或类的名称并列出输入和id =“这里的东西或输入:class =”这里的东西“进入RichTextbox进行审核。

这是我的代码。

Dim web As HtmlAgilityPack.HtmlWeb = New HtmlWeb()
Dim doc As HtmlAgilityPack.HtmlDocument = web.Load(TextBox1.Text)
Dim threadLinks As IEnumerable(Of HtmlNode) = doc.DocumentNode.SelectNodes("/input")

For Each link In threadLinks
Dim str As String = link.InnerHtml
RichTextBox1.Text = str.ToString

Next link

End Sub

1 个答案:

答案 0 :(得分:0)

以下是如何执行此操作(请注意,SelectNodes选择字符串已修复):

    Dim threadLinks As IEnumerable(Of HtmlNode) = doc.DocumentNode.SelectNodes("//input")

    ' Use a stringbuilder to hold all of the retrieved information
    Dim sbText As New System.Text.StringBuilder(5000)

    If threadLinks IsNot Nothing Then
        For Each link In threadLinks
            ' Add information about each found input on a new line
            sbText.Append("Id = ").Append(link.Id)

            ' The class is held in an attribute, so ensure the attribute exists before using it
            If link.Attributes.Contains("Class") Then
                ' Add the value of the class attribute to the output
                sbText.Append(", Class = ").Append(link.Attributes("Class").Value)
            End If

            ' Separate this item from the next by adding a new line
            sbText.AppendLine()
        Next
    End If

    ' Finally, send the retrieved information to the textbox.
    RichTextBox1.Text = sbText.ToString