http://www.cnblogs.com/sexintercourse/p/6063512.html
1、在WebBrowser中实现抓取301和302协议
在WebBrowser中抓取301和302协议目前官方提供的组件远远不够,需要借助HttpMonitor.dll。这个组件由美国人开发,目前项目宿主在
http://www.codeproject.com/Articles/157329/Http-Monitor-for-Webbrowser-Control 上,这个项目在vs2010上报错,经过我的调整,目前可以正常编译。组件下载
编译过程中可以联系我。qq 840189859
用之前要求注册组件。注册过程需要严格按照下面的步骤
将HttpMonitor.dll拷贝到C:\Windows\SysWOW64
用管理员身份运行命令行,按照步骤输入以下命令
命令1:
C:
命令2
cd C:\Windows\SysWOW64
命令3
regsvr32 HttpMonitor.dll
如果显示注册成功就成功,否则会显示错误,注册失败。
在注册过程中,会遭到360安全卫士,杀毒软件等的阻拦,建议关闭。
2、在WebBrowser实现链接的篡改。
我们在WebBrowser有时候需要篡改链接,比如说我们需要在每个链接上都加上?id=12113221312312。没有接触过这类似的需求,网上这类的需求和实现方式都少。
我们来实现下
WebBrowser有Navigating事件
private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
我们在Navicating事件上加如下代码
private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e){
string url = e.Url.ToString(); if (url.ToLower().Contains("id=")) { //可以随意跳转 e.Cancel = false; } else { e.Cancel = true; string newUrtl = String.Format("{0}?{1}", url,"id=12113221312312"); webBrowser1.Navigate(newUrtl); }
}
代码解释
如果连接中没有id=停止跳转。加上id=12113221312312进行跳转。
另外请打击查看软件截图
抓取到的数据举例:
http://192.168.0.2:8080/sso/js/common_rosters.js
REQUEST HEADERS -
RESPONSE HEADERS -
HTTP/1.1 200 OK
ETag: W/"6612-1477622585251"
Content-Type: application/javascript
Content-Length: 6612
Last-Modified: Fri, 28 Oct 2016 02:43:05 GMT
CACHE PATH - C:\Users\malia_000\AppData\Local\Microsoft\Windows\INetCache\IE\1GGZZZMD\common_rosters[1].js
--------------
http://192.168.0.2:8080/sso/js/passwordstrength.js
REQUEST HEADERS -
RESPONSE HEADERS -
HTTP/1.1 200 OK
ETag: W/"3506-1477622585263"
Content-Type: application/javascript
Content-Length: 3506
Last-Modified: Fri, 28 Oct 2016 02:43:05 GMT
CACHE PATH - C:\Users\malia_000\AppData\Local\Microsoft\Windows\INetCache\IE\1GGZZZMD\passwordstrength[1].js
--------------
http://192.168.0.2:8080/sso/css/jquery-ui-themes.css
REQUEST HEADERS -
RESPONSE HEADERS -
HTTP/1.1 200 OK
ETag: W/"28572-1477622584980"
Content-Type: text/css
Content-Length: 28572
Last-Modified: Fri, 28 Oct 2016 02:43:04 GMT
CACHE PATH - C:\Users\malia_000\AppData\Local\Microsoft\Windows\INetCache\IE\1GGZZZMD\jquery-ui-themes[1].css
--------------
http://192.168.0.2:8080/sso/css/axure_rp_page.css
REQUEST HEADERS -