易语言+HttpWatch分析并编写DZX1.51论坛管理器第九课——首次进入开心农场篇(三)
我们进入农场的目的就是想让农场的数据编程后展示出来,在上一课易语言+HttpWatch分析并编写DZX1.51论坛管理器第九课——首次进入开心农场篇(二)中,讲了几个关键通信,特别是第十八条数据,在本课中更正为第十七条数据,因新截取的通信数据较以前有所变化。先把这数据上传给大家参考(当然以你自己所截取的数据为准):这条通信数据因Query String(查询字串)字串太多,在取数据和组织URL代码时要细心,不然就会出错了(呵呵我在这里就因少了个“=”,检查代码好几次才找出错误来)。第十七条数据在Content中的内容里包括很多带“http://kxnc.manyou.yeswan.com/images/v3_3/”的链接,另因后面的通信中多数用这链接来打开SWF文件,所以这条数据是关键数据,如图所示:
上图中第十七条数据通信的代码如下:
.版本 2
.支持库 iconv
已创建连接 = 假
Request.Accept = “image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, */*”
Request.AcceptEncoding = “gzip, deflate”
Request.AcceptLanguage = “zh-cn”
Request.Connection = “Keep-Alive”
Request.Host = “kxnc.manyou.yeswan.com”
Request.Referer = “http://apps.manyou.com/1021978/?my_uchId=” + my_值.my_uchId + “&my_sId=” + my_值.my_sId + “&my_prefix=” + my_值.my_prefix + “&my_suffix=” + my_值.my_suffix + “&my_current=” + my_值.my_current + “&my_extra=” + my_值.my_extra + “&my_ts=” + my_值.my_ts + “&my_appVersion=” + my_值.my_appVersion + “&my_fullscreen=” + my_值.my_fullscreen + “&my_sig=” + my_值.my_sig
Request.UserAgent = “Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; .NET CLR 1.1.4322; KB974488)”
协议头 = “Accept:” + Request.Accept + #换行符 + “Accept-Encoding:” + Request.AcceptEncoding + #换行符 + “Accept-Language:” + Request.AcceptLanguage + #换行符 + “Connection:” + Request.Connection + #换行符 + “Host:” + Request.Host + #换行符 + “Referer:” + Request.Referer + #换行符 + “User-Agent:” + Request.UserAgent
' /?act=iframe&my_sig_uId=9455534646&my_sig_sId=9022208&my_sig_time=1363672689&my_sig_sessionId=5147fe7108ppg0hm79d5805dd272c0f1&my_sig_added=1&my_sig_prefix=http%3A%2F%2Fdemo.wgbcw.com%2Fdzx151gbk%2F&my_sig_appId=1021978&my_sig_page_app=userapp.php%3Fmod%3Dapp%26id%3D1021978%26my_suffix%3D&my_sig_page_login=member.php%3Fmod%3Dlogging%26action%3Dlogin&my_sig_page_install=userapp.php%3Fmod%3Dmanage%26appid%3D1021978&my_sig_in_iframe=1&my_sig_v=0.1&my_sig_uLevel=USER&my_sig_key=25caad47d8295a4deeddaaf494ed9f3b
URL = “/?act=iframe&my_sig_uId=” + my_sig_值.my_sig_uId + “&my_sig_sId=” + my_sig_值.my_sig_sId + “&my_sig_time=” + my_sig_值.my_sig_time + “&my_sig_sessionId=” + my_sig_值.my_sig_sessionId + “&my_sig_added=” + my_sig_值.my_sig_added + “&my_sig_prefix=” + my_sig_值.my_sig_prefix + “&my_sig_appId=” + my_sig_值.my_sig_appId + “&my_sig_page_app=” + my_sig_值.my_sig_page_app + “&my_sig_page_login=” + my_sig_值.my_sig_page_login + “&my_sig_page_install=” + my_sig_值.my_sig_page_install + “&my_sig_in_iframe=” + my_sig_值.my_sig_in_iframe + “&my_sig_v=” + my_sig_值.my_sig_v + “&my_sig_uLevel=” + my_sig_值.my_sig_uLevel + “&my_sig_key=” + my_sig_值.my_sig_key
临时字节集 = GET_1 (URL, 协议头, 返回内容)
返回内容 = 到文本 (编码转换 (GZIP解压 (临时字节集), #编码_UTF_8, #编码_GBK, ))
取Cookie并设置 (“http://” + Request.Host + URL)
输出调试文本 (“开心农场应用17数据=======” + 返回内容)
说明下上图中两个蓝色框里的数据多数是和农场有关的网页样式、Google广告及农场相关图标等,则省略。从两蓝框的中间的红框里“http://kxnc.manyou.yeswan.com/images/v3_3_1/happyfarm.swf?v=hf50”的链接开始,为重点数据。当然在上图中不难发现,有两条同样的数据,经仔细看后,两次的Cookie设置不一样,所以要执行两次。大家应该知道HTTP通信中Cookie很重要,为了防止后面数据出错,我们先按照HttpWatch中所截取到的数据依次执行。下面我们接着来看下面截图:
刚才我们提到要编程后获取农场数据,那我们就要看Content中返回的数据中有没有相关内容,经看上图红框的Content里内容如下:
{"farmlandStatus":[{"a":2,"b":6,"f":0,"g":0,"h":1,"i":[],"j":0,"k":16,"l":9,"m":16,"n":2,"o":0,"p":[],"q":1333100082,"r":1333136082,"s":0,"t":0,"u":0},{"a":2,"b":6,"f":0,"g":0,"h":1,"i":[],"j":0,"k":20,"l":12,"m":20,"n":2,"o":0,"p":[],"q":1333121687,"r":1333136087,"s":0,"t":0,"u":0},{"a":2,"b":6,"f":0,"g":0,"h":1,"i":[],"j":0,"k":20,"l":12,"m":20,"n":2,"o":0,"p":[],"q":1333121687,"r":1333136087,"s":0,"t":0,"u":0},{"a":2,"b":6,"f":0,"g":0,"h":1,"i":[],"j":0,"k":20,"l":12,"m":20,"n":2,"o":0,"p":[],"q":1333110887,"r":1333136087,"s":0,"t":0,"u":0},{"a":0,"b":0,"f":0,"g":0,"h":1,"i":[],"j":0,"k":0,"l":0,"m":0,"n":2,"o":0,"p":[],"q":0,"r":1333136087,"s":0,"t":0,"u":0},{"a":0,"b":0,"f":0,"g":0,"h":1,"i":[],"j":0,"k":0,"l":0,"m":0,"n":2,"o":0,"p":[],"q":0,"r":1333136087,"s":0,"t":0,"u":0}],"items":{"1":{"itemId":1},"2":{"itemId":2}},"exp":"0","charm":0,"dog":{"dogId":0,"dogFeedTime":0,"dogUnWorkTime":0},"top":null,"serverTime":{"time":1363672702},"user":{"uId":"9455534646","userName":"wgbcw1","money":"500","FB":"0","exp":"0","charm":0,"headPic":"http:\/\/uchome.manyou.com\/avatar\/9455534646?thumb"},"l":0,"a":0,"c":0,"b":0}从上面不难看出农场数据出现了,特别是后面两行中明显是自己论坛账号及农场数据,所以我要想获取这条数据,那我们就必须用上图红框内的数据来通信。我们简单来看下此数据的Query String(查询字串):
act run
farmKey 5c098b6aedf747dd0739c1289a234d4d
farmTime 1363672697
inuId
mod user
在上面Query String中,发现farmKey在前面所用到的通信中都没出现过,所以我们就必须从和“http://kxnc.manyou.yeswan.com/images/v3_3”,这链接相关的所有数据慢慢地仔细地分析。此过程是难点,所以我们在下课再分析。
现在把本课中所要编写的代码编写下……
页:
[1]