起晚了又或者说是系统进不去,那就只能去吃残羹冷炙了...
此脚本主要是针对别人帮忙选课,然后准备退课给别人的时候,从别人手上抢过来.仅供交流学习,请勿用于非法用途,不保证抢课成功,具体情以实际为主
直接贴代码
<?php //authorqq 1790716272 ignore_user_abort(true);//防止超时 set_time_limit(0); if(!file_exists('./info.bat')){ //从黑框框控制台输入 if(php_sapi_name() === 'cli'){ echo '请输入ck:'; fscanf(STDIN,"%s",$ck); echo '请输入课程信息:'; fscanf(STDIN,"%s",$course); }else{ //浏览器get方式输入 $course = trim($_GET['course']); $ck = trim($_GET['ck']); } file_put_contents('./info.bat',$ck."\n".$course); }else{ $info = file_get_contents('./info.bat'); list($ck,$course) = explode("\n",$info); } $header[] = 'accept: application/json, text/javascript, */*; q=0.01'; $header[] = 'accept-encoding: gzip, deflate, br'; $header[] = $ck; $header[] = 'content-type: application/x-www-form-urlencoded;charset=UTF-8'; $header[] = 'user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36'; $result = xCurl('https://jwgl.gznu.edu.cn/jwglxt/xsxk/zzxkyzbjk_xkBcZyZzxkYzb.html',null,$course,$header); if(!$result) exit("登录失败或对方服务器超时\n可以把超时时间设置久一点\n"); if(json_decode($result)->flag==-1) echo '抢课失败'; else echo '抢课成功'; echo "\n"; function xCurl($url,$cookie=null,$postdata=null,$header=array()){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); if (!is_null($postdata)) curl_setopt($ch, CURLOPT_POSTFIELDS,$postdata); if (!is_null($cookie)) curl_setopt($ch, CURLOPT_COOKIE,$cookie); curl_setopt($ch, CURLOPT_FAILONERROR, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt($ch, CURLOPT_ENCODING, "gzip"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//绕过证书 curl_setopt($ch, CURLOPT_TIMEOUT, 10);//超时设置 $re = curl_exec($ch); curl_close($ch); return $re; }
效果图:
使用方法就不再赘述.
获取课程和ck方法:在点击抢课按钮之前按F12打开控制台,点击抢课按钮之后,再点击network,headers查看,往下翻
再点击payload,view sourse ,下面那串就是课程信息
我自己是一分钟扫描一次
版权属于:龙辉博客
本文链接:https://blog.eirds.cn/435.html
如果没有特别声明则为本博原创。转载时须注明出处及本声明!
8 comments
大佬牛呀
来催更了!!!
想办法更新它一篇
又来催更了
已经更新
能不能 写一个 纯抢课的代码
成功抢到了高尔夫OωO
这个课容易过
能不能私聊2802193700