以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  优化提取网页数据代码  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=196234)

--  作者:ZJZK2018
--  发布时间:2025/4/10 12:44:00
--  优化提取网页数据代码
下面这段代码在提取网页数据时,速度很慢,如何优化提取网页数据速度?谢谢
Dim web As New System.Windows.Forms.WebBrowser()
web.ScriptErrorsSuppressed = True \'解决网页页面的脚本错误提示
web.Navigate("https://ggzy.hzctc.hangzhou.gov.cn/OpenBidRecord/Index?id=AB39801E-8F6B-4729-9B42-4242DDA677FF&tenderID=F0A1B013-7400-4F60-8799-DC8C0827D6D9&IsHistory=0&ModuleID=486")

Do Until web.ReadyState = 4 AndAlso web.Document.GetElementById("Table1") IsNot Nothing
    Application.DoEvents \'绘制控件的代码即刻生效
Loop
Dim elems As Object = web.Document.GetElementsByTagName("div") \'可以根据你指定的参数,找出html源码中或xml内所有标签名称等于该参数的元素
\'th 代表表的列名
elems = web.Document.GetElementById("Table1").GetElementsByTagName("th") \'方法可返回对拥有指定 ID 的第一个对象的引用

For i As Integer = 0 To elems.Count - 1
    Output.Show(elems(i).InnerText)
Next

elems = web.Document.GetElementById("Table1").GetElementsByTagName("tr") \'GetElementsByTagName()方法可返回带有指定标签名的对象的集合
For n As Integer = 1 To elems.Count - 2
    Dim tds = elems(n).GetElementsByTagName("td")
    For tn As Integer = 0 To tds.Count - 1
        Output.Show(tds(tn).InnerText)
    Next
Next

--  作者:有点蓝
--  发布时间:2025/4/10 13:28:00
--  
没有什么可优化的