论坛首页 Java企业应用论坛

HTTPClient模拟登陆人人网

浏览 58574 次
该帖已经被评为精华帖
作者 正文
   发表时间:2010-04-09  
自己对一个网站试了下,还是不甚理解,响应头中没有location。
接下来应该怎么做?
0 请登录后投票
   发表时间:2010-04-09   最后修改:2010-04-09
husai 写道
自己对一个网站试了下,还是不甚理解,响应头中没有location。
接下来应该怎么做?


1 在模拟登陆前,你需要对一个网站的登录流程有一个了解,最好找一个录制工具,在录制工具中手动登录一遍,然后查看在你登陆过程中向服务器发送了什么参数,用这个参数使用HTTPClient进行登录。我用的工具是badboy,导出成jmeter文件可以在jemter里看参数。

2 登录成功后,有些网站有要重定向的,响应头中有location,有些是不需要的,取决网站实现。

3 另一种方法是登录成功后你忽略返回,直接用HttpGet去得到你想要访问的页面,因为HTTPClient是自动管理cookie的。
0 请登录后投票
   发表时间:2010-04-09  
嗯 确实 要加了 验证这个就不成了 那怎么用介个解决呢
0 请登录后投票
   发表时间:2010-04-09   最后修改:2010-04-09
whaosoft 写道
嗯 确实 要加了 验证这个就不成了 那怎么用介个解决呢



如果验证码是和客户端相关的,就一定可以找到办法通过验证。如果验证码和服务器相关,比如验证码是在服务端通过运行一段代码产生的,那就只能破解图片了。

另外,有些更智能的验证码,比如问一个问题,这种机器是没有办法识别的。

碰到这种极端情况,也许可以考虑在HTTPClient把cookie设置成手动登陆成功后的cookie,在cookie没有过期前,使用客户端无需登录就可以访问相关页面,但是这样做需要人工来配合。
0 请登录后投票
   发表时间:2010-04-09  
呵呵 java下 flex下 我都写乐
我写的是自动偷菜

cookie自动管理。~~
通过分析返回的Http协议头维护自己的cookie
0 请登录后投票
   发表时间:2010-04-09  
目前的网站,大部分都是get或者post,只要把post或者get的内容了解下,就可以用httpclient模拟任何操作了
0 请登录后投票
   发表时间:2010-04-09  
jxsgy 写道
就可以用httpclient模拟任何操作了


我会在后一篇文章介绍如何登录开心001,只使用httpclient就不能完成目的,还需要借助其它工具。
0 请登录后投票
   发表时间:2010-04-09  
passionke 写道
呵呵 java下 flex下 我都写乐
我写的是自动偷菜

cookie自动管理。~~
通过分析返回的Http协议头维护自己的cookie


flex没有接触过,准备找机会看看JavaFX。
0 请登录后投票
   发表时间:2010-04-09  
引用
flex没有接触过,准备找机会看看JavaFX。


请问JavaFx开发有前途(或钱途)么?或者流行趋势?我想不到有什么钱途就没去琢磨这个JavaFx。
0 请登录后投票
   发表时间:2010-04-09  
我也觉得,如果有难证码怎么登陆。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics