以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  WebBrowser 访问的时候遇到的奇怪问题?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=90445)

--  作者:qq121454970
--  发布时间:2016/9/13 8:12:00
--  WebBrowser 访问的时候遇到的奇怪问题?
很简单的一段代码,但是访问目标网址(www.ctfmall.com/special/gp.aspx),需要1分钟以上,但是通过浏览器访问,几乎是秒开的。

不知道为什么,访问百度等其他网址,就好很多。

代码如下,望能指点一二

Dim st As Date = Date.Now
Using Web As New System.Windows.Forms.WebBrowser
Web.Navigate("www.ctfmall.com/special/gp.aspx")
Do Until Web.ReadyState = 4
    Application.DoEvents()
Loop
End Using
Output.Show("耗时: " & (Date.Now - st).TotalSeconds & "秒")

--  作者:有点蓝
--  发布时间:2016/9/13 8:41:00
--  
ReadyState = 4等待是完全加载完毕,而且Application.DoEvents()是会占用时间的。

浏览器一般都有延迟加载功能,即先打开页面框架,然后再慢慢下载图片等,完全加载完毕未必是打开网页的时间,而且浏览器本身的缓存也会加快加载速度。

建议在DocumentCompleted事件处理,参考:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=32808
[此贴子已经被作者于2016/9/13 8:42:34编辑过]