码迷,mamicode.com
首页 > 移动开发 > 详细

AndroidHttpClient & jsoup 解析 正方教务系统

时间:2014-05-04 10:42:00      阅读:442      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   code   java   width   

这段时间学习了一下使用jsoup来解析网页,也是看了下学校的正方教务系统,因为这个正方教务系统的各种不爽,不知道为什么还是那么多学校用这个系统呢?每到选课什么的就死啦死啦的,从它的网页上各种命名来看,简直就和我们这些小菜鸟一样o(╯□╰)o

 

使用AndroidHttpClient 而不是使用HttpClient,怎么说AndroidHttpClient也是SDK中自带的,基于HttpConnection,所以来说性能上来说应该比较好吧.

因为不熟悉使用这个强大的工具导致走了很多弯路,浪费了很多时间 ,很多参数没有像new 一个DefaultHttpClient简单,AndroidHttpClient的参数需要手动设置一下才好,比如说我在java 工程中使用的是HttpClient,我也没设置什么参数,直接拿来就用,它内部已经帮我们处理了很多细节问题,像重定向,,有时候我都不知道他重定向干嘛去了,经常获取不到我需要的内容.在Android 工程中 ,使用AndroidHttpClient 默认不会自动重定向,需要手动设置,还有忘记设置各个header导致各种问题.

此次任务是使用AndroidHttpclient来获取指定网站的数据内容,包括模拟各种post,get等请求.然后交由jsoup工具来解析出我需要的内容,比如课表查询,用户信息,学生成绩等...

当然在这之前对网站的抓包分析是不可少的,我就使用了最简单的工具,Google浏览器和它自带的工具,特别注意这段中间的一段字符串(24位),搞不懂原理,这个网站怎么抓也抓不到cookie,

bubuko.com,布布扣

1.首先的登录进去才行,我们知道一般网站都会设置个验证码什么的,所以我就想了各种办法来尝试是否可以直接不要验证码登录呢,可惜太难搞了,还是老老实实自己填写吧,貌似那个叫什么orc的可以自动识别类似的验证码的.

根据这个验证码地址找到链接,http://jwgl.hstc.edu.cn/(oco15si4snyeb04510vu0045)/CheckCode.aspx  ,直接访问这个就是验证码了,但是我们特别需要获取到中间的那段字符串,它是每次随机产生的,很像cookie的工作,后面的访问都需要这段,

一开始我是直接固定了一段24位的字符串给他,也能正常登陆进去,但是获取各种信息的时候就不能了.所以还得从访问http://jwgl.hstc.edu.cn/CheckCode.aspx这个地址后会重定向到一段新的地址,这个地址中间就有了24位字符串了.然后根据这个字符串加入首页来模拟登陆. 使用AndroidHttpClient获取到这个网址的响应内容,经过重定向后得到一个InputStream,然后让它显示到ImageView上,我在测试的时候经常接收不到响应的输入流,可能是哪里出问题了,在2.3系统上跑还很正常,在4.2上就经常没内容了.

然后还是各种用户输入登录的过程了.

代码就不贴了,放上连接,目前该项目正在进行中,欢迎各位前来指导.

 

AndroidHttpClient & jsoup 解析 正方教务系统,布布扣,bubuko.com

AndroidHttpClient & jsoup 解析 正方教务系统

标签:android   style   blog   code   java   width   

原文地址:http://www.cnblogs.com/act262/p/3705737.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!