Greasy Fork is available in English.
北邮体育馆预约,全新改版,跳过获取预约列表这一费时操作,直接获取预约url
北邮体育馆预约,全新改版,跳过获取预约列表这一费时操作,直接获取预约url
打开脚本代码页面,先进行设置,以下例子为10点抢10月27号18点的游泳馆,打开脚本设置,运行时期更改为document-start
var item = 0 //0:羽毛球 1:乒乓球 2:游泳馆 3:健身房
var hour = 2, minute = 0 //开抢时间点(当本地时间大于该时间点时自动启动核心函数)
var timeIndex = [1] //预约时间段序号列表(按时间顺序排时间段,列表内数字代表相应序号时间段) 例如:某一天有三个时间段:"08:00-09:20","10:00-11:20","12:00-13:20",[2,3]代表抢10点与12点的
var posIndex = [[1]] //该时间段内位置列表(乒乓球和羽毛球同一时间段内有多个位置,默认为1,选第一个)游泳馆和健身房同一时间段内就一个,就是1 timeIndex与posIndex长度一致
var autoPay = 0 //是否自动用余额支付,0代表不自动,1代表自动(注意,如若不自动,尽量快点支付,因为只有支付完成后才算预约上,否则可能会出现在支付过程中位置已被别人抢完)
var flag = 0 //1代表默认抢明天的,否则抢date所表示的,flag为1则date属性无效
var date = "20201019" //所要预约的日期 一共8位,例如:20200506
羽毛球一天有三个时间段 "08:00-09:20","10:00-11:20","12:00-13:20",每个时间段有5个位置,我想在2点8分开始抢明天10:00-11:20的一号位置,12:00-13:20的四号五号位置,自动支付,设置如下: //item=0;hour=2;minute=8;timeIndex=[2,3];posIndex=[[1],[4,5]];autoPay=1;flag=1;
游泳馆一天有一个时间段 "18:00-20:00",每个时间段有1个位置,我想在10点开始抢明天位置,不自动支付,设置如下: //item=2;hour=10;minute=0;timeIndex=[1];posIndex=[[1]];autoPay=1;flag=1;
北邮游泳馆每日预约开放时间:10点,健身房:12点
在预约时间点前完成以下操作,关闭vpn和脚本,进行步骤2,4,5(请不要点击首页进入,首页进不去,而是用步骤5这种方式进入),若页面显示参数错误,则移除https://reservation.bupt.edu.cn/index.php/Wechat/Display/index页面内所有cookies(点击谷歌浏览器地址栏左侧🔒图标=>cookies=>所有全部都移除),再次重复2,4,5,查看个人中心,若未登录进行步骤6,登录好,重新打开脚本,调好脚本设置,在预约时间点前一小段时间内进行步骤5,脚本便自动运行,到了时间点自动启动核心函数
研究了网页前端源码,惊奇发现有捷径可走。我们在抢预约时预约列表加载页面十分慢,这是因为在此时有大量服务器请求所要预约的那天空闲位置情况,然而我们选好位置,点击预约时,这时候网页跳转到另一个url,那为何我们不直接跳转到这个url,而省下大量在请求预约列表花费的时间呢?相当于我们之前费时操作仅仅为了得到一个url,这也太扯淡了。故写此脚本,快速抢预约。
北邮体育馆抢预约脚本,可实现在某个时间点立即刷新预约界面,迅速找到所要抢的位置,并自动预约购买。
打开脚本代码页面,先进行设置,以下例子为10点抢10月27号18点的游泳馆,打开脚本设置,运行时期更改为document-start
var item = 0 //0:游泳馆 1:乒乓球 2:羽毛球 3:健身房
var hour = 10, minute = 0 //开抢时间点
var date = "20201017" //所要预约的日期
var time = ["18:00-20:00"] //预约时间段列表(注意是英文冒号,数字为两位数,例如八点为08:00) 例如: ["08:00-09:00","22:00-23:00"]抢这两个时段的
var autoPay = 0 //是否自动用余额支付,0代表不自动,1代表自动
于9点50左右(10点之前一小段时间内),关闭vpn和脚本,重复步骤1,3 ,4(请不要点击首页进入,首页进不去,而是用步骤4这种方式进入),若页面显示参数错误,则移除https://reservation.bupt.edu.cn/index.php/Wechat/Display/index页面内所有cookies(点击谷歌浏览器地址栏左侧🔒图标=>cookies=>所有全部都移除),再次重复1,3,4,查看个人中心,若未登录重复步骤5,登录好,打开脚本,调好设置,重复步骤4,脚本便自动运行
所谓抢,就是要在相关按钮出现的一瞬间迅速点击,而获取网页元素不能太快,否则页面还未加载好元素就获取直接gg,由此如何在元素加载完成后立即获取尤为关键 首先脚本需要在document-start运行,不能等整个页面加载完毕执行,否则速度太慢。然后整个脚本基于waitForElementToDisplay函数,该函数每20ms(时间可以在代码里修改)检测一次元素是否存在,一旦存在立马执行,由此达到迅速的效果。