在北理工选过课的同学都知道,选课分为很多轮次,前两轮是靠概率筛选,后几轮全部都是靠先到先得。那么这就引发了一个不好的现象,有的同学让其他同学帮他选课,然后等到第三轮的时候再将选到的课退给他。这就相当于在第一轮的时候别人是几个人选一门课,而有的人是一个人选一门课。变成了一个不公平的选课机制。

为了维护世界的正义与和平(处在不公平中的有利位置),我写了抢课的程序,原理很简单,就是不断的告诉服务器我要这门课,因为我的时间间隔设置为了0.5s,所以基本上是在第三轮以后有人退课我便可以将其选(抢)过来。也算是一种截胡吧。

当然了,我这个方法因为是没有检查是否有人退课,而是不断告诉服务器我要这门课,所以仅仅能指定某几门课来选,不过这样其实也就足够了,想上的课也就那么几门。

不过,将抢课程序和详细方法都发出来的话,我没准就被学校请去喝茶了,所以只能写得特别笼统而且简单,需要一定的软件知识和编程知识才能自行实现。

环境要求:

JAVA1.7以上,Python2.x

程序要求:

burpsuite_pro

抢课步骤:

1.打开burpsuite_pro

2.打开教务处,到达选课页面

3.利用burpsuite_pro,将选某一门课的请求包给抓下来。(方法自行百度)

4.利用python2.x的urllib和urllib2的库来发送包,发送的包的url,headers,data和抓下来的设置成一样即可(方法自行百度)

5.程序中加一个while 1循环使其不断运行,然后打开运行

6.等待,实测村里大概得抢6~7个小时,乡里一般2个小时以内就可以抢到。(原因自行分析)

备注:

注意抢下来的包的编码问题。

教程到此结束,其实在我的内心里还是希望这个程序传出去的,可是这样对学校服务器的冲击就太大了,不过没准也可以促进学校更新教务管理系统。学校已经在这么做了,希望下学期能够有更公平的选课系统和选课机制的出现。毕竟没有人喜欢不公平,尤其是处在不公平中不利位置的人。

#2018-5更新#

博文写于大三,上一学期听说有倒买倒卖课程的造成了很不好的影响学校都新添了很多门选修课,而且学校已经采用了新的教务管理的系统,这个方法是否适用就不得而知了,不过考虑到那个新教务系统的实现还是相对要简单的,应该写起来也不难。不过还是希望学校有更多的选修课,从根本上来解决问题。

#2019-9更新#

前阵子帮女票爬生物的论文网站颇有心得,我发现利用Selenium+Chrome更简单,Selenium可以很简单的使用Chrome获取的元素(利用Chrome中检查元素,获取Xpath),比方说获取课程名称,获取按钮位置,点击按钮等,编写一个简单的程序,就可以自动检查是否有课,并且自动选择,比原文的方法简单更多,百度的教程也更多。

北京理工大学抢课教程相关推荐

  1. c语言程序设计 北京理工,C语言程序设计教程北京理工大学-部分课后习题答案...

    <C语言程序设计教程北京理工大学-部分课后习题答案>由会员分享,可在线阅读,更多相关<C语言程序设计教程北京理工大学-部分课后习题答案(5页珍藏版)>请在人人文库网上搜索. 1 ...

  2. 大学计算机李凤霞课本百度云,北京理工大学李凤霞老师个人资料

    主要从事计算机基础教学和虚拟现实与仿真领域的科研工作,主讲了本科生.硕士生.博士生课程共12门,主编了10部教材,指导了40多名研究生.主持了国家科研项目8项,发表了30多篇论文,获得了学校.北京市和 ...

  3. 北京理工大学重点用人单位推荐

    毕业生的就业去向一直是学生和社会比较关心的问题,招生就业工作处对学校用人单位数据库进行了全面整理和分析,结合近五年接收毕业生数量.校友发展状况.单位现状以及对未来发展趋势的预测等因素,从中筛选出首批1 ...

  4. 计算机网络邮件客户编程,北京理工大学-计算机网络实践-实验4POP3邮件客户程序.docx...

    北京理工大学-计算机网络实践-实验4POP3邮件客户程序 实验四 POP3 邮件客户程序实验目的电子邮件 E-Mail 是Internet 中广泛使用的服务之一,在Internet 电子邮件系统中,邮 ...

  5. 北京理工大学计算机学院张教授,北京理工大学嵩天教授做客信息学院

    2020年11月8日上午,应湖南师范大学信息科学与工程学院邀请,北京理工大学计算机学院博士生导师嵩天教授在中和楼信息学院523会议室做了题为"坚持问题导向--建设新时代一流计算机基础系列课程 ...

  6. 北京理工大学python系列课程-北理工《Python语言程序设计》荣获中国最美慕课一等奖...

    历经两个月的激烈角逐,在2018年11月1日举办的"中国大学慕课精彩100评选"活动中,北京理工大学计算机学院<Python语言程序设计>在参评的百所高校申报的1850 ...

  7. python北京理工大学推荐的书-Python语言程序设计

    Q1:Python语言.C语言.Java语言.VB语言--到底哪种适合作为入门编程语言呢? A1: Python是最好的程序设计入门语言.也是最先进的程序设计语言. 如果只想学一门程序设计语言,请学P ...

  8. 微型计算机期末考试a卷,(208) 北京理工大学

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 (208) 北京理工大学远程教育学院2019-2020学年第二学期 <微机与数控>期末试卷(A卷) V:xinlengning -----微机 ...

  9. 高考特长计算机2017,2017年北京理工大学计算机学院申请竞赛获奖与特长生推荐.PDF...

    2017 年北京理工大学计算机学院申请竞赛获奖及特长生推荐免试硕士学位研究生名单 排序 姓名 本科专业 竞赛获奖等级 赛事名称或发表论文的核心期刊名称 1 关明扬 计算机科学与 全国总决赛一等奖 20 ...

最新文章

  1. C++ algorithm库中的几个常用函数(swap,reverse,sort)
  2. ida pro 7.5 idapython学习
  3. android音乐编辑器汉化版,WaveEditor手机版
  4. 利用JS实现点击上一周或下一周却换
  5. 信息学奥赛C++语言: 数字三角形1
  6. html 文字中不换行怎么写,HTML让字体在一行内显示不换行
  7. python入门经典电子书-python从入门到精通pdf
  8. FZU 1692 Key problem
  9. 【LeetCode】【数组】题号:*48,旋转图像
  10. Spring boot应用【tailf】服务启动停止管理脚本
  11. IPC$入侵的4种方式
  12. Catch the moments of your life. Catch them while you're young and quick.
  13. 外部多端口映射Https443端口配置
  14. 39. 网络管理之IP配置,查看当前IP和网络设备,网络配置文件(ifcfg-网卡)详解,配置静态IP,配置动态IP,临时设置,/etc/sysconfig/network-scripts/ifcfg
  15. git提交失败——running pre-commit hook: lint-staged
  16. Android之设备加密
  17. OpenCV开发笔记(七十二):红胖子8分钟带你使用opencv+dnn+tensorFlow识别物体
  18. 数据仓库amp;数据指标amp;数据治理体系搭建方法论
  19. @程序员,承认吧,都是你的错!
  20. No qualifying bean of type ‘xxx‘的问题解决方案

热门文章

  1. [bzoj4816][Sdoi2017]数字表格 (反演+逆元)
  2. python学习——电子邮件
  3. HTML复习之基础标签
  4. configure error /bin/bash /config sub failed
  5. gitLab数据备份和迁移
  6. 计算任意文件夹大小 , 校验大文件的一致性 , 发抢红包程序
  7. 埃尔米特插值及其代码
  8. Hive内表和外表的区别
  9. 将字符串中的中文转为拼音(java)
  10. 新编计算机英语第2版,新编计算机英语-电子教案2.ppt