日期:2014-05-17  浏览次数:20647 次

HTMLUNIT小应用——人人网一种刷人气的方法
      纵观人人网上的人气之星不是白富美就是高富帅,像我这样的穷屌丝如何提高人气呢?写个程序吧。。
       哈,开个玩笑。。其实有一天闲着无聊,在百度上发现了一种名字叫做“人人网人气大师”的东西。于是,想自己写个类似的模拟登录并访问的东西来打发时间。
       说干就干,第一步,打开人人网,查看源文件。开始我想用post来写个简单的东西,结果,发现post并不能实现预想的功能。后来,发现了使用htmlunit来写的话,这东西就简单得要死。
       部分代码如下:

      renren = new WebClient(BrowserVersion.INTERNET_EXPLORER_8);//参数是浏览器版本号
      try {
renren.waitForBackgroundJavaScript(10000);
log = renren.getPage("http://www.renren.com/");//获取人人网登录页面

} catch (FailingHttpStatusCodeException e) {

e.printStackTrace();
} catch (MalformedURLException e) {

e.printStackTrace();
} catch (IOException e) {

e.printStackTrace();
}

     下面就是操作登录页面了,htmlunit使我们的这个工作变得异常简单。关键代码如下:
      经过研究人人网的登录页面源代码,推荐是用getElementById(id)这个方法比较容易找到相应的表单。
例如:
      HtmlElement nameform = rr.log.getElementById("email");//获取输入用户名的表单。
      然后调用.click()方法点击一下这个表单,然后使用type()方法填入相应的用户名。一切都和实际操作一样。
      等填写好了表单,我们需要找到提交按钮,代码如下:
      HtmlSubmitInput button = (HtmlSubmitInput) rr.log.getElementById("login");
     再次使用.click()即可
      这样就完成了自动登录。
      然后,你可以建立一系列的小号,使用上面的关键代码,再加上一些计时器,让这些小号来访问你想要刷的人人网帐号。计时器就是控制小号访问时停留的时间和再次访问的间隔时间。
      
      经过检验,这种方法可以达到刷访问的目的,而效果的好坏主要取决于你小号的多少。但是由于,htmlunit解析人人网网页较慢加上一些必要间隔时间,所以这个刷访问的方法个人感觉效率较低。只能当作htmlunit的小应用,当作打发时间吧。

      我是菜鸟,我犯错,我开心!
     
    转载请注明: http://king-lan.iteye.com/blog/1539748