标题: [转贴] VBS代码获取重定向的URL [打印本页]
作者: find 时间: 2012-1-11 18:01 标题: VBS代码获取重定向的URL
我本来想获取aaa.com页面的内容,可是aaa.com跳转到bbb.com了。我想获取bbb.com 这个网址。
某个人问的问题:
我本来想获取aaa.com页面的内容,可是aaa.com跳转到bbb.com了。我想获取bbb.com 这个网址。
访问了一下他所谓的aaa.com,发现是HTTP 302重定向- HTTP/1.1 302 Moved Temporarily
- Server: nginx/0.8.53
- Date: Fri, 08 Apr 2011 15:49:25 GMT
- Content-Type: text/html;charset=utf-8
- Transfer-Encoding: chunked
- Connection: keep-alive
- X-Powered-By: PHP/5.2.15
- Location: http://tuan.sohu.com/beijing/life/
复制代码
为了测试方便,我写了一个302.php,重定向到小顾de杂记:- <?php
- header('Location: http://ihipop.info/');
- ?>
复制代码
先用XMLHTTP试试:- Dim http
- Set http = CreateObject("Msxml2.ServerXMLHTTP")
- http.open "GET", "http://demon.tw/test/302.php", False
- http.send
- WScript.Echo http.responseText
复制代码
XMLHTTP组件在处理包含Location头的302消息时太智能,直接给跳转到Location指定的页面了。
XMLHTTP不行,我们还有WinHttp.WinHttpRequest.5.1,该组件的Option属性的第六个索引EnableRedirects就是指示是否自动跳转:- Dim WinHttp
- Set WinHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
- WinHttp.Open "GET", "http://demon.tw/test/302.php", False
- WinHttp.Option(6) = False
- WinHttp.Send
- WScript.Echo WinHttp.GetResponseHeader("Location")
复制代码
作者: Demon 时间: 2012-1-12 13:17
垃圾脚本之家
http://demon.tw/programming/vbs-http-302-redirect.html
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |