浙大 nCov 肺炎健康打卡定时自动脚本
- 可多人
- 可定时,默认为每天 6 点 5 分
- 默认每次提交上次所提交的内容(只有时间部分更新)
- 打卡失败后会发送邮件到浙大邮箱提醒(可配置)
项目用于学习交流,仅用于各项无异常时打卡,如有身体不适等情况还请自行如实打卡~
感谢conv1d同学,已使用 requests 直接登录浙大统一认证平台,不再依赖 phantomjs
增加了各操作系统的 phantomjs 和自动选 driver 的功能,结果导致库变得较大,如果想自行下载对应版本的 phantomjs,可以切换到neat
分支(只保留了 windows 系统的 phantomjs)下载本项目。
[2022-5-9]:现在已经可以通过ddddocr库完成对验证码的自动识别,但失败时仅有邮件提醒,可能需要手动重新打卡。新增了eai-sess字段设置,该字段可能会过期需要从cookie里重新获取。
-
clone 本项目(为了加快 clone 速度,可以指定 clone 深度
--depth 1
,只克隆最近一次 commit),并 cd 到本目录$ git clone https://github.com/QSCTech-Sange/ZJU-nCov-Hitcarder.git --depth 1 $ cd ZJU-nCov-Hitcarder
-
安装依赖
$ pip3 install -r requirements.txt
-
将 config.json.templ 模板文件重命名为 config.json 文件,并修改 config.json 中的配置。如果需要更多用户的话可以继续添加。请注意,用户与用户之间的大括号之间应该留有逗号,而结尾不应该留有逗号。如果只需要给一个人打开,可以删除第二个用户。其中eai-sess的获取可以参考这里,感谢这位大佬。
{ "username":"你的浙大统一认证平台用户名" , "password":"你的浙大统一认证平台密码", "schedule": { "hour": "6", "minute": "5" }, "eai-sess" : "your eai sess from https://www.cc98.org/topic/4969340" }, { "username":"你对象的浙大统一认证平台用户名" , "password":"你对象的浙大统一认证平台密码", "schedule": { "hour": "6", "minute": "5" }, "eai-sess" : "your eai sess from https://www.cc98.org/topic/4969340" }
-
启动定时自动打卡脚本
$ python3 main.py
-
如若要启动发送邮件的功能
- 请在 main.py 里修改第 86 行
mail_on = True
- 同时在 mail.py 里填写发送源的邮箱和密码
- 重新执行第四步
- 请在 main.py 里修改第 86 行
- 第一次打卡需要人工打卡。
- 为了防止电脑休眠或关机时程序不运行,推荐把这个部署到 VPS 上。
- 可以使用
tmux
或byobu
多开终端让其在后台运行。 - 在根目录下会生成
log.txt
便于查看打卡状态,可以开着tail -f log.txt
以便实时刷新 - 测试程序是否正常运行:可以先把定的时间放在最近的一个时间(比如下一分钟)看下到时间是否可以正常打卡。
感谢贡献者
Copyright (c) 2020 tishacy.
Licensed under the MIT License