python 爬虫登陆学校教务系统

好像很多人写爬虫,都是从登陆学校教务系统开始的。为什么?学校教务系统渣啊,都是明文传输的,而且是200x年写的,没有用到很多现在的技术,所以相对来说容易些。感觉很多学校都是用的清元优软的这个,我们学校还有验证码,稍微高级了一点。


整体思路: 1 对用firefox+httpfox进行抓包,发现验证码是在这里的,

http://172.18.1.77:9002/validateCodeAction.do?random=0.7513717659345102
是用的GET方法。于是可以请求不同的随机数,获得验证码图片,并保存下来。同时发现,请求验证码时,服务器会下发Cookie,这是一个典型的Session,


我把它记录下来,当post提交表单时,在header上加上。

2 用google的开源库tesseract-ocr对验证码进行识别,为了提高识别的准确性,我是将彩色图片进行二值滤波,得到黑白图片,在用subprocess调用系统命令识别。

3 用python的requests库进行提交表单,这里发现post data里面是有hidden data的,也要一并提交,不然会认为是错误。

4 找到成绩的连接,GET成绩,然后用beautifulsoup进行html解析。

这期间是遇到了N个坑,真的是做项目的时候对人提高特别大,会了解很多新的东西。


  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Python爬虫教务系统的方法有多种。根据引用,你可以通过模拟登录来实现。首先,你需要分析登录过程,了解登录请求的参数和地址。然后,你可以使用Python的requests库发送POST请求,将你的账号和密码作为参数发送给服务器。此外,如果登录时需要验证码,你可以使用百度的OCR技术来进行验证码的识别。最后,你可以使用execjs库来执行JavaScript代码,以查询成绩。 另一种简单的方法是使用Cookie来绕过登录验证。根据引用,教务系统通常通过用户Request请求中的Cookie进行身份识别。因此,你可以在爬虫访问时自建表头Header,并在表头中添加已登录的Cookie。这样,你就可以成功登录教务系统。 综上所述,Python爬虫教务系统的方法可以通过模拟登录或使用Cookie来实现。具体的实现细节取决于你所访问的教务系统的具体要求和限制。 - 本文介绍用python模拟登录中国海洋大学教务系统的方法,此系统为湖青果软件公司开发,因此如果你学校教务系统也是青果开发的,那么此文对你的模拟登录也会有一定的借鉴意义。 - 使用爬虫脚本成功登录教务系统,由于网站前后端分离各自负责不同工作,网站通常通过用户Request请求中的Cookie进行身份识别,因此实现登录的最简单方法就是在爬虫访问时自建表头Header,在表头中添加已登录的Cookie即可绕过登录验证。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值