Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

江西师范大学(jxnu)自动位置预约脚本,为了解放你晚上十点的时光

前提

本脚本已经开发出来三年有余,中间因为各种原因,导致停止了维护,以及star和fork都丢了,现在重新放出来给大家参考思路,我也没有账号测试有没有用,如果有好心人测试了,把结果提个issue告诉我!

为什么开发这个脚本?

本脚本由CZ制作,考研期间不喜欢抢位置,所以做了这个,考完之后加上了小伙伴的功能和四个自习室自由选择的功能,然后现在打算分享给大家,不要广为流传,自己默默用就好了=-=

怎么使用?

首先环境安装:使用PIP进行环境安装。

pip install requests

打开config.json文件,填写相应的数据

        "usernum": "",#学号

        "password": "",#密码
            
        "wannaRoom": "1",  # 1:二楼南,2:二楼北,3:三楼南,4:三楼北
        
        "wannaSeat": "99",  # 自己想要的位置
        
        "startTime": "9",  #想要开始的时间
        
        "wannaDuration": "13",  # 想要在自习室待多久

        "partnerFlag": false,  # 需要加入小伙伴则置为true,不用则为false。//如果加入小伙伴则与小伙伴相关的内容都需要填写,并且正确!

        "partnerNum": "",#小伙伴学号

        "partnerName": "",#小伙伴的姓名,一定要和学号匹配!否则程序无法正常运行
        
        "partnerWannaSeat": "88",  # 小伙伴想要的位置
            
        "serverToken" : "", #server酱的token

通知问题:使用server酱进行通知,先前往server酱官网进行申请与绑定,得到一个server酱的Token,将此Token输入到config.json文件中的serverToken


"server酱的Token"。 注意!!!这个token需要字符串形式,也就是两边要加上''或者"",否则将不会有消息通知的。


运行这个脚本则输入命令:

python3 自习室抢位置.py

运行的时候怎么调整数据?

如果想要更新数据,在 自习室抢位置.py 这个文件中调用 renewInfo() 函数即可。如果没有修改账号密码或者小伙伴的信息则不需要更新数据。初始化的时候,因为cookies为空,所以会自动调用 renewInfo() 函数,所以不必重复调用

想要调整位置信息可以直接更改config.json这个文件,不用停止脚本,反正随便皮。

暂时下线这个调整功能,我想下如何优化这个功能。


PS

API啥的都隐去了,大家自己玩填空题嘛。

我想了想还是把完整的代码放出来了。

完全面向过程编程,面向对象是不存在的,怎么顺手怎么来!

期待已久的面向对象编程出现了!可以将各种函数封装,只管调用一个work() 即可!


PPS

大佬愿意帮忙对象化的,可以联系我。就是提一个issue就可以了哦。不然pull request?

感谢sadscv 大佬,感谢提供大佬的对象化代码,大佬辛苦了。


PPPS

本人上线了本脚本的DEMO,感兴趣的可以试一试哦!

传送门——》座位预约系统

暂时下线本Demo


更新日志

2019年5月10日 16点55分

1.调整是否成功的判定条件

2.更新预约成功后位置信息获取的方式

3.更新内容通知的格式,使通知的信息更加完善

4.更新了README.MD,让脚本更易用


2019年6月22日 19点19分

1.加了能够修改开始时间的功能。没办法,这个脚本都是因为自己懒才写的,所以少功能啥的也正常哦!想要什么功能或者改进加个issue哦!

2.修改了小伙伴相关的bug,以前测试是在已经有json的情况下进行的,没有测试完全初始化的情况。

3.顺手增加了一点点注释,真的是一点点!


2019年7月2日 14点14分

1.将输出流重定向到文件了,默认打开,不需要则自己注释开头增加的那几段代码。

2.完善了使用说明,增加了测试相关的教程。

3.增加了预约今天位置的功能,一般用于测试,具体使用教程看 cal_begin_time 的代码注释。


2019年7月6日 16点21分

1.更新了位置预约的逻辑。

2.更新了程序定时功能的代码。

3.增加相应的try,防止程序意外退出。


2019年7月16日 12点54分

1.修复原来存在的一些BUG

2.改进了一下流程,使程序更加高效

3.继续增加注释


2019年7月22日 22点47分

1.修复日志不输出问题=-=不过,不要文件日志需要注释更多地方。

2.关于日志更新,目前考虑是一次任务一更新。

3.TODO:重构输出函数


2019年7月30日 21点49分

1.重构了输出函数

2.完善了输出信息,方便DEBUG

3.好消息,好消息。我又回来填坑了,是不是很开心?

4.TODO:尝试对整体封装。


2019年8月9日 22点27分

1.首先感谢sadscv大佬,感谢提供大佬的对象化代码,大佬辛苦了

2.参考大佬的代码,将以前的代码进行面向对象编程

3.删除了cookies管理相关的代码,经过一段时间的使用发现cookies可以不用更新

4.增加大量注释

5.修复了请求位置数因为链接不稳定而不变化,导致不断发送请求的问题

6.更新了REAEDME.MD文件,修改了程序的使用说明

About

位置预约自动预约脚本,解放你晚上10点的时间

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages