如何在WebBrowser控件中循环表中的行?

时间:2013-12-24 16:08:06

标签: vb.net

我有一个网页,我试图从中提取数据元素。我试图弄清楚如何循环网页中的标记,包含在显示的特定“TABLE”标记内。

    Dim ProductionRpt = WebBrowser1.Document.GetElementById("ProductionReport").Children
    For Each row As HtmlElement In ProductionRpt
        MsgBox(row.InnerText)
    Next row

上面的代码就是我要对表行进行的操作,只有上面的代码返回表html元素的innertext,而不是表中包含的任何标记。如果您只是查看表元素本身(这确实是我告诉它要做的)而不是任何行,也许这是预期的。如何遍历所有标签,以便我可以访问我想要的数据?除了使用.GetElementsByTagName?

之外还有其他方法吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

这取决于您希望在这些行中找到的内容...如果您确定要找到01级别的<a>标记,则应该简单地创建其他内容If语句和Loop使用GetElementsByTagName来检查,就像你说的那样。即使您有更多要检查的标签,您也可以遍历“预期标签”列表。

如果你不知道你将要找到的每一行中有多少嵌套元素,那么你应该创建一个递归函数,并在继续下一行之前查找一行中的任何子元素(及其值)。 。 http://msdn.microsoft.com/en-us/library/81tad23s.aspx