以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  如何能历遍IE中的所有元素  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=176597)

--  作者:ap9709130
--  发布时间:2022/4/19 16:52:00
--  如何能历遍IE中的所有元素
 如题代码如下:

Dim OjbIe As Object = CreateObject("InternetExplorer.Application")
With OjbIe
    .Visible = 1
    .Navigate("http://www.foxtable.com/")
    Application.DoEvents
    Do While .Busy
        Application.DoEvents
    Loop
    Dim DoM As Object = .Document
    With DoM     
        Dim hec As System.Windows.Forms.HtmlElementCollection = .GetElementsByTagName("li") \'获得当前页面的HTML元素集合
        Output.show(50)
        For i As Integer = 0 To hec.Count-1 \'循环所有元素
            Output.show(hec(i).OuterHtml)
        Next
    End With
End With

老师 有项目必须用到IE ,想历遍IE中的所有元素,但到取集全就出错,请问要如何才能历遍所有的元素?

--  作者:有点蓝
--  发布时间:2022/4/19 16:55:00
--  
这种只能自行学习了:https://docs.microsoft.com/zh-cn/dotnet/api/system.windows.forms.htmlelement?view=netframework-4.0
--  作者:ap9709130
--  发布时间:2022/4/19 17:06:00
--  
 老师

     GetElementsByTagName("HTML")

也会报错,今天试了一个下午都不行,哪位好心的高手指点我一下可以吗?

--  作者:hongsejiyi
--  发布时间:2022/4/19 17:44:00
--  

Dim OjbIe As New System.Windows.Forms.WebBrowser()
With OjbIe
    .Visible = 1
    .Navigate("http://www.foxtable.com/")
    Do Until .ReadyState = 4
        Application.DoEvents
    Loop
   
    Dim DoM = .Document
    With DoM
        Dim hec = .GetElementsByTagName("li") \'获得当前页面的HTML元素集合
        Output.show(50)
        For Each cc As system.windows.forms.htmlelement In  hec \'循环所有元素
            Output.show(cc.OuterHtml)
        Next
    End With
End With