|
本帖最后由 13107981237 于 2019-6-20 22:25 编辑
请教网抓大神,网抓请求无响应
代码如下
Sub Main33()
Dim strText As String
Dim strCookie As String
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Option(6) = False ' 禁止重定向,以获取原网页信息
.Open "GET", "http://budw.fleetsystem.cn/wv/", False
.Send
.SetProxy 2, "127.0.0.1:8888"
strText = .getAllResponseHeaders '获取所有的回应头信息
' Debug.Print strText: Stop '在立即窗口里查看头信息
strCookie = Split(Split(strText, "Set-Cookie:")(1), ";")(0) '取出Cookie值
'在同一个winhttp对象里能保留cookie,为了体现设置cookie的作用,启用一个新的winhttp对象
.Open "post", "http://budw.fleetsystem.cn/wv/signin?-1.IFormSubmitListener-signInPanel-signInForm", False
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.setRequestHeader "Referer", "http://budw.fleetsystem.cn/wv/signin;jsessionid=5B71299D139BF6A27A3A8C432D71DF8F"
.setRequestHeader "Cookie", strCookie '模拟Cookie
.SetProxy 2, "127.0.0.1:8888"
.Send "id1_hf_0=&username=put-admin&password=put123456&languageContainer%3Aoption=&rememberMeContainer%3ArememberMe=on"
strText = .getAllResponseHeaders
Debug.Print strText
sx0 = Split(Split(strText, "Set-Cookie:")(1), ";")(0) '取出Cookie值
sx1 = Split(Split(strText, "Set-Cookie:")(2), ";")(0) '取出Cookie值
sx2 = sx1 & ";" & strCookie
End With
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "get", "http://budw.fleetsystem.cn/wv/entity?3", False
.SetProxy 2, "127.0.0.1:8888"
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.setRequestHeader "Referer", "http://budw.fleetsystem.cn/"
.setRequestHeader "Cookie", sx2 '模拟Cookie
.Send
End With
'-------------------------------------- 以下fiddler 响应就不正常了,而且有一个参数无法模拟出来(红色部分)-----------------------------------------------------------------------------------------------------------
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "get", "http://budw.fleetsystem.cn/wv/entity?3-1.IBehaviorListener.0-theme-header-primaryMenuBar-menuItems-2-topMenu-subMenuItems-5-content-menuLink&_=1561034268990", False
.SetProxy 2, "127.0.0.1:8888"
.Option(6) = False ' 禁止重定向,以获取原网页信息
.setRequestHeader "Wicket-Ajax", "true"
.setRequestHeader "Wicket-Ajax-BaseUR", "entity?3"
.setRequestHeader "Wicket-FocusedElementId", "id1e"
.setRequestHeader "X-Requested-With", "XMLHttpRequest"
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.setRequestHeader "Referer", "http://budw.fleetsystem.cn/wv/entity?3"
.setRequestHeader "Cookie", sx2 '模拟Cookie
.Send
End With
With CreateObject("WinHttp.WinHttpRequest.5.1")
.Open "post", "http://budw.fleetsystem.cn/wv/entity?3-1.IBehaviorListener.1-theme-actionPromptModalWindow-content-parameters-inputForm-okButton", False
.SetProxy 2, "127.0.0.1:8888"
.setRequestHeader "Referer", "http://budw.fleetsystem.cn/wv/entity?3"
.setRequestHeader "Cookie", sx2
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
.Send "id6e_hf_0=¶meters%3A1%3AscalarNameAndValue%3AscalarTypeContainer%3AscalarIfRegular%3AentityLink%3AautoComplete=security.AppTenancy%3As_%2Fbudw%2FPUT_New%5E6%3Aput-admin%3A¶meters%3A2%3AscalarNameAndValue%3AscalarTypeContainer%3AscalarIfRegular%3AscalarValueContainer%3AscalarValue=2019-06-15¶meters%3A3%3AscalarNameAndValue%3AscalarTypeContainer%3AscalarIfRegular%3AscalarValueContainer%3AscalarValue=2019-06-15&okButton=1"
End With
End Sub
请教大师指导迷津!!
http://budw.fleetsystem.cn/
|
|