VB6.0:如何通过xmlhttp对象,获取多个URL的HTML代码?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB6.0:如何通过xmlhttp对象,获取多个URL的HTML代码?相关的知识,希望对你有一定的参考价值。
这里产生的另外一个问题就是,如何判断一个URL的代码已经获取完成,从而开始获取下一个页面呢?
有的页面打开速度很慢,比如要1分钟,那这个如何处理呢?是不是会直接报错呢?
读取数据的时候,还应该检测xmlhttp的status属性,只有200才表示返回的是正确的网页数据,而其他如404表示未找到网页、500表示服务器错误等等。
轮询的时候可以加个计数器,达到某个数值时就跳出继续读取下个网页或结束读取,这样就可避免某个网页打开速度过慢而影响整个读取过程。
更好的解决办法是一次性声明多个xmlhttp对象变量(建议用数组),这样就可以同时获取多个网页的代码。当然这种情况下就必须使用异步调用方式。追问
额...
不好意思了,之前没看到你的答案...
Function gethtmlStr(strUrl As String) '获取源码
On Error Resume Next
Dim XmlHttp As Object, stime, ntime
Set XmlHttp = CreateObject("Microsoft.XMLHTTP")
XmlHttp.open "GET", strUrl, True
XmlHttp.send
stime = Now '获取当前时间
While XmlHttp.ReadyState <> 4
DoEvents
ntime = Now() '获取循环时间
If DateDiff("s", stime, ntime) > 3 Then getHtmlStr = "": Exit Function ‘3秒获取不到就退出获取
Wend
getHtmlStr = StrConv(XmlHttp.responseBody, vbUnicode)
Set XmlHttp = Nothing
End Function
使用:
abc=getHtmlStr("http://www.baidu.com")
1、判断是否获取到内容,判断abc的值就可以了
2、加载慢超时问题,只能重复获取,时间太长,容易造成软件假死不稳定等问题。本回答被提问者采纳
vb 获取一个网页内的链接和链接名称
vb 获取一个网页内的链接和链接名称,把所有显示在listbox 中,每条显示比如:百度|http://baidu.com
请问VB代码怎么写
上面问题知道你http://zhidao.baidu.com/question/87393556.html?si=3这里回答过 但是我VB运行不了 请把代码写详细点 谢谢了
也可用inet或xmlhttp取得网页代码,然后进行文本处理,可以用正则表达式处理。来自:求助得到的回答本回答被提问者和网友采纳 参考技术A 如果你正确加载了WEB浏览器控件,是可以运行代码的
以上是关于VB6.0:如何通过xmlhttp对象,获取多个URL的HTML代码?的主要内容,如果未能解决你的问题,请参考以下文章
vb6.0数据库开发 一个窗体上有一个combobox 多个textbox 如何实现combobox选值后 textbox自动显示其他数据