淮南网站建设,电视台网站建设方案,网站手绘教程,制作网站的步骤和方法这个不是一个点击脚本#xff0c;而是属于扩容性质的脚本。名额不够咱们利用技术来解决#xff01;最近一学期一次的抢课大戏又来了#xff0c;几家欢乐几家愁。O(∩_∩)O哈哈~(l我每次一选就过了hah#xff0c;我还是有欧的时候滴)。看着他们盯着教务系统就着急#xff0…这个不是一个点击脚本而是属于扩容性质的脚本。名额不够咱们利用技术来解决最近一学期一次的抢课大戏又来了几家欢乐几家愁。O(∩_∩)O哈哈~(l我每次一选就过了hah我还是有欧的时候滴)。看着他们盯着教务系统就着急何况我们那教务系统不想说什么。emmm 想周围的朋友正好下午利用扩容前一段时间写了个小脚本帮助朋友抢课。(当然抢到了啦^_^)因为时间不够来不及仔细琢磨我第一想法就是直接提交选课的数据包(需要cookie和课程ID),先用同学的账号登录教务系统进入到选课的地方打开浏览器的开发模式(按F12)点击Network()我这里是谷歌浏览器如果是其他的找到网络抓包即可。马上尝试如下图我们需要的是提交选课的那个数据包然后用python一直提交模拟。接下来找到提交的数据包。我们先点击选课(我是已经选择过了给大家看下点击后的情况)因为老师准备扩容所以他们会显示该课程人数已满。(不管怎么样我们找到了这个数据包)我们来看下这个数据包的内容我们需要找到cookie( 你的身份标识)以及我们需要选的课程ID)然后用python模拟提交就OK了。将这两个数据保存下来后面用的到还注意下URL哦就是课程ID的那个地址。下面的代码部分。import requestsfrom future.backports.test.ssl_servers import threading# 获取cookie 和 课程id就可以抢课def qian1():data 201820192001656# data 是找到的课程ID因为python没学好代码写的有点乱# 下面是地址 就是我们抓到的那个数据包的URLcookie 用找到的cookie替换header {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36,cookie:cookie}# 一直抢while True:# 设定5s服务器未应答就放弃这次鬼知道是服务器炸了还是。。。。mes requests.get(url, headersheader, timeout5)# 打印返回的结果就是弹出来的那个小窗口的内容print(str(1)str(mes.status_code):str(mes.text))# 后面是不同的课因为不能吊在一课树上def qian():data 201820192001302url http://*****/jsxsd/xsxkkc/bxxkOper?jx0404idstr(data)cookie *****cookieheader {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36,cookie:cookie}while True:mes requests.get(url, headersheader, timeout5)print(str(0)str(mes.status_code):str(mes.text))def qian2():data 201820192001155url http://****n/jsxsd/xsxkkc/bxxkOper?jx0404id str(data)cookie cookieheader {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36,cookie: cookie}while True:mes requests.get(url, headersheader, timeout5)print(str(2)str(mes.status_code) : str(mes.text))def main():# 开多线程分开抢课# 接下来就会一直抢课thread1 threading.Thread(targetqian)thread2 threading.Thread(targetqian1)thread3 threading.Thread(targetqian2)thread4 threading.Thread(targetqian)thread5 threading.Thread(targetqian1)thread6 threading.Thread(targetqian2)thread1.start()thread2.start()thread3.start()thread4.start()thread5.start()thread6.start()main()下面是效果图开始帮小伙伴抢课成功而且学校这节课只扩了2个人其中一个被我抢到了hah总结用多线程抢应该靠谱些(我Python线程没学好还需要加油)需要cookie才能抢不适合其他人这点还需要进步希望以后能先多思考再动手可以少吃很多亏加油ヾ(◍°∇°◍)