Dirain的开源地带

思想在进步
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

     相信园子里也有不少玩开心网的朋友,但为了玩的更顺心,所以我开发了一款开心网辅助工具,可以自动进行操作。

     现在为了开发出更强大的功能,所以今天讲解一下原理及我已经封装好的所有类库,希望你能加入我开发更多的插件!

     准备工具:WSockExpert(用于抓包)

     原理:分析出开心网的所有操作连接,通过程序模拟请求进行批量操作!

     今天拿开心网登陆做例子,并用程序进行模拟登陆。

     

选择好监听页面后从浏览器进行登陆操作。

     点击登陆按钮后,抓包程序就会有变化了,因为刚才我们进行了与开心网服务器交互动作,需要向外发送数据,所以通过抓包数据得到了如下结果:

 

POST /login/login.php HTTP/1.1
Accept: application/x-shockwave-flash, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
Referer: http://www.kaixin001.com/
Accept-Language: zh-CN
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; .NET CLR 2.0.50727; CIBA)
Host: http://www.kaixin001.com/
Content-Length: 48
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: _uid=2121099; SERVERID=_srv134-110_

mailto:url=%2F&email=dirain**@yahoo.cn&password=19920226

 

/login/login.php,就是登陆的请求地址,全部连接应该是:http://www.kaixin001.com/login/login.php

最底部的mailto:url=%2F&email=dirain**@yahoo.cn&password=19920226 应该就是传递的参数,我们可以看到,只提交了帐号和密码为参数,请求类型为POST。

 

得到了这些信息,就可以通过C#的WebRequest去模拟一个请求,实现登陆操作,代码也很简单。

 模拟请求的方法

 

 

模拟POST请求

 

在模拟请求中需要注意的是同步Cookie,否则没有办法维持session。

webRequest.CookieContainer = this.cookies;

这句话就是维持session的关键代码,this.cookies是一个非局部变量,这样保证每次调用的时候都可以使用上次操作时的cookie。

 

Code

 

只要每次请求的时候把Webrequest对象的CookieContainer 属性赋值为已经声明好的 CookieContainer对象,而不是重新实例化。

 登陆开心网

登陆开心网

 

     这是个简单的模拟请求登陆代码,其实做WEB程序的辅助工具,重要的就是分析数据,这个例子中最重要的步骤还是用抓包工具去抓取开心网的提交方式以及传递参数。如果你不用抓包工具去抓取你也可以通过分析html表单来获取传递方式,但这样会很麻烦。

     总结一下过程其实很简单,分析提交到服务器的URL,通过程序模拟请求去操作,然后得到服务器返回结果通过提取网页内容的方式达到我们想实现的效果。

     

     我个人现在已经做出了一个很完善的开心网辅助程序,并且开放源代码,我希望有更多的朋友能够加入我的论坛,我的辅助程序会提供所有核心类库的文档及使用案例,如果你有兴趣,可以来我的论坛获得开心网助手为开发人员提供的类库和文档,你可以利用我的资源去完成一些你喜欢的插件。

     在这里我发放一些我论坛的邀请码:

http://www.dirain.cn/bbs/register.php?invitecode=a1de3ea79804Fmtc
http://www.dirain.cn/bbs/register.php?invitecode=2155a8f2edW4Wizi
http://www.dirain.cn/bbs/register.php?invitecode=7fb1fc6037oBfzb2
http://www.dirain.cn/bbs/register.php?invitecode=882e091b361JjRWw
http://www.dirain.cn/bbs/register.php?invitecode=ceec9fe58aHFcBFc
http://www.dirain.cn/bbs/register.php?invitecode=5912a91454F553n8
http://www.dirain.cn/bbs/register.php?invitecode=b1c159faf5EemMae
http://www.dirain.cn/bbs/register.php?invitecode=d373d2f7fdQ2QEDQ
http://www.dirain.cn/bbs/register.php?invitecode=c28a44b53blDulcz
http://www.dirain.cn/bbs/register.php?invitecode=2f28e50ab1scsqSZ
http://www.dirain.cn/bbs/register.php?invitecode=631cfca158oN4wnT
http://www.dirain.cn/bbs/register.php?invitecode=b01999d11dwT4wR5
http://www.dirain.cn/bbs/register.php?invitecode=32a16fd970dezYdL
http://www.dirain.cn/bbs/register.php?invitecode=6bc8a6e8fa8eUnna
http://www.dirain.cn/bbs/register.php?invitecode=f9bb7c3f4b6AXZ56
http://www.dirain.cn/bbs/register.php?invitecode=17626aff75T2R5Ff
http://www.dirain.cn/bbs/register.php?invitecode=02c5936fe5Oo2WEE
http://www.dirain.cn/bbs/register.php?invitecode=8025cc2f771DOcSS
http://www.dirain.cn/bbs/register.php?invitecode=16ef48a0e7izF5GI
http://www.dirain.cn/bbs/register.php?invitecode=2ef14fb78aDD39RR
http://www.dirain.cn/bbs/register.php?invitecode=93d8a08bb21jM0oJ
http://www.dirain.cn/bbs/register.php?invitecode=8196a0c5fdiDbj8W
http://www.dirain.cn/bbs/register.php?invitecode=71dde6888dE75qNZ
http://www.dirain.cn/bbs/register.php?invitecode=cfabc7cdf13KvBFb
http://www.dirain.cn/bbs/register.php?invitecode=c2024281d9ICwSWP
http://www.dirain.cn/bbs/register.php?invitecode=6ca5c38cda3elLyY
http://www.dirain.cn/bbs/register.php?invitecode=97f72f420dB250YS
http://www.dirain.cn/bbs/register.php?invitecode=f6b76eaa2aK62R5B
http://www.dirain.cn/bbs/register.php?invitecode=9ca55a3b1cNOfaMo
http://www.dirain.cn/bbs/register.php?invitecode=fe4ac3f20cF6QkL9
http://www.dirain.cn/bbs/register.php?invitecode=519648448dSokcC1
http://www.dirain.cn/bbs/register.php?invitecode=890a191c3715p44f
http://www.dirain.cn/bbs/register.php?invitecode=8bb676ec3dttRF0R
http://www.dirain.cn/bbs/register.php?invitecode=e4c23c52e91lsy2m
http://www.dirain.cn/bbs/register.php?invitecode=7da256482bi5863i
http://www.dirain.cn/bbs/register.php?invitecode=102129f8654Y98ym
http://www.dirain.cn/bbs/register.php?invitecode=5be415d087G0PkwH