如何用vbs获取网页全部数据
vbscript吧
全部回复
仅看楼主
level 13
oshi001 楼主
如何用vbs获得网页的全部数据呢比如图片 网页表格写出到文件中?
2014年05月01日 10点05分 1
level 13
oshi001 楼主
都没人愿意回答问题呀
2014年05月03日 04点05分 2
level 9
考虑get的方式,如xmlhttp
2014年05月25日 09点05分 3
试过但获取数据不完整可以给个例子吗?谢谢
2014年05月25日 09点05分
level 9
Option Explicit
MsgBox HTTP_GET("http://www.baidu.com/")
Function HTTP_GET(URL)
Dim XML
Set XML = CreateObject("WinHttp.WinHttpRequest.5.1")
With XML
.Open "GET",URL + "?t=" + CStr(Rnd()),True'后面加时间戳防缓存,如果URL有参数就把?改为&
.SetTimeouts 50000, 50000, 50000, 50000'超时
.Send
.WaitForResponse
If XML.Status = 200 Then'成功获取页面
HTTP_GET = GB2312ToUnicode(.ResponseBody)
Else
MsgBox "Http错误代码:" & .Status, 16, "提示"
End If
End With
End Function
Function HTTP_POST(URL,data)
Dim XML
Set XML = CreateObject("WinHttp.WinHttpRequest.5.1")
With XML
.Open "POST",URL ,True
.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"'设置HTTP头信息
.SetTimeouts 50000, 50000, 50000, 50000'超时
.Send(data)
.WaitForResponse
If XML.Status = 200 Then'成功获取页面
HTTP_POST = GB2312ToUnicode(.ResponseBody)
Else
MsgBox "Http错误代码:" & .Status, 16, "提示"
End If
End With
End Function
Function GB2312ToUnicode(str)
With CreateObject("adodb.stream")
.Type = 1 : .Open
.Write str : .Position = 0
.Type = 2 : .Charset = "gb2312"
GB2312ToUnicode = .ReadText : .Close
End With
End Function
2014年05月25日 09点05分 4
这一段确实可以获取到网页数据但是在含有label列表数据的网页列表数据加载不完整但web控件加载可以
2014年05月25日 10点05分
level 12
2014年05月25日 13点05分 5
1