以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 如何异步获取网页代码 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=183861) |
-- 作者:lxhmax -- 发布时间:2022/11/16 16:12:00 -- 如何异步获取网页代码 下面的内容设置为自定义函数"获取网页数据" Dim hd As New Hap.HtmlDocument Dim w As New System.Windows.Forms.WebBrowser w.ScriptErrorsSuppressed = True \'禁止js错误提示 w.Navigate("https://www.baidu.com/") Do Until w.ReadyState = 4 Application.DoEvents Loop Dim wydm As String = w.DocumentText Output.Show(wydm) 然后用同步函数就没问题,用异步函数就报下面这个错误,请问下老师,如何才能异步获取网页代码?因为同步的耗时太久了,每一个页面要2秒左右,10个页面就要20多秒 .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.4.10.8 错误所在事件:自定义函数判断房源状态 详细错误信息: 调用的目标发生了异常。 当前线程不在单线程单元中,因此无法实例化 ActiveX 控件“8856f961-340a-11d0-a96b-00c04fd705a2”。 |
-- 作者:有点蓝 -- 发布时间:2022/11/16 16:17:00 -- 无法在异步里使用的。可以考虑到网页加载事件里处理,http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=32808,看里面的全局代码 |
-- 作者:nsdata -- 发布时间:2022/11/17 2:02:00 -- 建议 最好能加强一点 异步处理方法,能让foxtable分开处理数据、UI。。。。像获取WebBrowser内容不进行UI操作的话可以开线程获取 防止卡顿,一般语言都支持 |