Java--使用httpClient模拟登陆正方教务系统获取课表

本文介绍了如何使用Java的httpClient库模拟登陆正方教务系统以获取课表。通过分析登录过程的HTTP包,提取必要的表单数据,包括学号、密码和验证码,并利用httpClient进行模拟登陆。成功登陆后,通过相同的HttpClient实例获取课程表页面,利用HTTP解析库处理源代码以提取课程信息。
摘要由CSDN通过智能技术生成

最近形如课程格子与超表课程表应用如雨后春笋般涌现,他们自动获取课程表是怎么实现的呢。于是我用Java实现了一下模拟登陆正方教务系统获取课表的过程。


首先,我们先了解一下网站登录的原理:当我们输入学号,密码后点击登录后,浏览器会将我们输入的学号,密码,还有验证码等信息以post的形式发送到网站服务器的一个地址。网站服务器接收到post请求后,就会先验证输入的post过来的验证码是否正确,然后再验证用户名和密码。如果登陆成功,服务器就会生成随机串返回给浏览器,浏览器得到这个串后,就会作为cookies保存在浏览器。然后我们每次访问要获取登录后的数据都会提交这个串来验证是否已经登录。


所以,我们要获取课表信息的话,第一步必须要先登录教务系统,获取cookies。

那么我们怎么知道我要登录教务系统需要提交什么内容的表单呢?很简单,我们可以使用Fiddler来对我们登录教务系统的过程抓包。

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值