开心农场助手——开发总结

简介: 一、原因        闲的无聊没事总上开心网(http://www.kaixin001.com)的农场去种种地、偷偷成熟的植物和动物幼崽。
一、原因
        闲的无聊没事总上开心网( http://www.kaixin001.com)的农场去种种地、偷偷成熟的植物和动物幼崽。用IE打开网站需要时不时的去刷新才能知道是否可以偷了,是否可以收获了等等,十分麻烦不方便,而且还容易错过(被别人抢先偷走)。基于此原因,打算自己写个小程序完成这些任务。
二、实现的初步成果
        开发时间进行了一天,初步成果介绍:用户登录、自己菜地的植物成熟列表及其名称,有成熟植物的好友列表。
三、程序开发重点
       1. 语言采用c#,该语言开发周期短
       2. 需要了解或者利用其他手段来获知菜地的各种属性值,利用该值作为信息显示和判断的依据。
       3. 模拟http的POST、GET方法,以及cookie的使用和获得。因为这个关系到网站模拟登录以及登录后的操作。
       4. Unicode编码文字转换为正常显示
       5. 登录过程中,验证码的获得和提交
       6. XML解析,难点是指定子节点,获得该子节点的值。
       7. 正则表达式,使用正则来获得需要的信息,避免使用indexof来搜索。
四、模块介绍
       1. 登录
            1)使用HttpWebRequest来实现模拟POST登录,并获得cookie
                  res = (HttpWebResponse) req.GetResponse();
                  strKaixinCookie = req.CookieContainer.GetCookieHeader(new Uri(url));            2)使用cookie
                  CookieContainer cookieCon = new CookieContainer();
                  httpWebRequest.CookieContainer = cookieCon;                  string [] Cookies=strKaixinCookie.Split(";".ToCharArray());
                  foreach(string cookie in Cookies)
                 {
                     httpWebRequest.CookieContainer.SetCookies(new Uri(url), cookie);
                 }       2. 登录验证码
           因为一直在测试程序,导致每次登陆都会提示我输入图片形式的验证码。这里没有采用文字识别,而是提示给用户,让用户自己输入。
          获得验证码图片,一定要注意否则输入的验证码信息提交上去后无效。
           http://www.kaixin001.com/interface/regcreatepng.php?randnum=自己创建的随机串norect=1
         带验证码提交的串
          invisible_mode=0&rcode=与验证码相一致的随机串(必须一样否则不能验证失败)&url=//&email=password=&code=验证码
      3. 一些URL
      登录者的菜地信息
       http://www.kaixin001.com/!house/!garden/getconf.php?fuid=0&r=时间戳
     成熟的好友列表
      http://www.kaixin001.com/!house/!garden/getfriendmature.php?verify=身份验证唯一标识&r=时间戳
    好友菜地
     http://www.kaixin001.com/!house/!garden//getconf.php?fuid=好友的UserID&r=时间戳
    4. 正则表达式
         regex = new Regex("realname/":/"(.+?)/"",RegexOptions.Singleline);
         iEnumerator = regex.Matches(strResult).GetEnumerator();         try
         {
                while (iEnumerator.MoveNext())
               {
                       str+= NormalU2C(((Match)iEnumerator.Current).Groups[1].Value.ToString()) + "/r/n"; 
               }
         }
         finally
        {
               IDisposable iDisposable = iEnumerator as IDisposable;
               if (iDisposable != null)
               {
                      iDisposable.Dispose();
               }
        }     5. XML操作
         nodeList = doc.SelectNodes("/conf/garden/item");
         foreach (XmlNode node in nodeList)
        {
              XmlNode subNode=node.SelectSingleNode("name");
              if (subNode!=null)
             {
                       string strName= subNode.InnerText;
                       string strProduct=node.SelectSingleNode("crops").InnerText;
                       str+=strName + " /r/n";
              }
        }五、暂告一段落
目录
相关文章
|
5月前
|
XML 前端开发 测试技术
【实训项目】传道学习助手APP设计
【实训项目】传道学习助手APP设计
|
8月前
|
机器学习/深度学习 编解码 算法
让你的电脑更有逼格的5款优质黑科技软件
作为一个黑科技软件爱好者,电脑里肯定是不会缺少这方面的东西,这不,我又带着5款优质软件闪亮登场了。
111 0
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
随着网络的快速发展,语音交友源码平台的新型功能将我们儿时的歌手梦托起,这个功能就是语音交友源码平台的在线KTV功能,对于开发语音交友平台的公司和个人来说,这个功能是非常重要的,下面我就详细为大家讲解语音交友源码平台搭建技术:在线KTV功能的实现!
重拾梦想!语音交友源码平台搭建技术知识:在线KTV功能的实现
|
10月前
|
自然语言处理 Windows
电脑小白不要错过这五款小众但强大的软件
电脑上的各类软件有很多,除了那些常见的大众化软件,还有很多不为人知的小众软件,专注于实用功能,简洁干净、功能强悍。
140 1
|
11月前
|
小程序
第一款小游戏做完了,邀请好朋友来提前体验
陆陆续续的大半个月的时间,一边做开发,一边写教程着实不轻松,不过,小蚂蚁的第一款小游戏终于完成了。今天已经将其提交到微信小游戏平台开始审核,如果顺利的话,大概一两个天之后,游戏会正式上线。
60 0
《从此爱上开会 云投屏和视频会议系统提升会议体验和效率》电子版地址
从此爱上开会 云投屏和视频会议系统提升会议体验和效率
80 0
《从此爱上开会 云投屏和视频会议系统提升会议体验和效率》电子版地址
|
Java Go 开发工具
电脑软件-猿如意
猿如意作用
216 0
电脑软件-猿如意
|
传感器 机器人 测试技术
当办公室里的机器人隔板突然围住你,网友:社恐福音!
当办公室里的机器人隔板突然围住你,网友:社恐福音!
124 0
当办公室里的机器人隔板突然围住你,网友:社恐福音!
天猫精灵开发平台AliGenie - 打造孩子专属的暖心小伙伴
在天猫精灵陪伴孩子的过程中,除了监督学习、讲故事、听儿歌,我更希望它可以成为孩子倾诉的对象,当孩子遇到困难或者在学校被欺负,它可以化身为精灵,给予孩子更多的鼓励和说些更暖心话语,温暖一个个幼小的心灵。
440 0
天猫精灵开发平台AliGenie - 打造孩子专属的暖心小伙伴
|
前端开发 Java Serverless
玩转《天猫精灵技能平台》,搞一个诗词问答小游戏
看了中国诗词大会,必须要自己搞一个诗词问答小游戏。 文章最后还有一个思路,非常简单的思路,大家可以试着去实现一下。
13811 5
玩转《天猫精灵技能平台》,搞一个诗词问答小游戏

热门文章

最新文章