如果对你有帮助欢迎 Star ~
两种实现方式都可以使用,都使用了百度云OCR处理验证码图片
-
auto_clock_in.py
- 推荐:使用requests
的get
和post
处理https
请求,配合utils.py
使用 -
auto_clock_in_with_selenium.py
-selenium
和webDriver
实行浏览器自动化 (已删除,可以查看历史 commit)
requests
pycryptodome
pip3 install requests
pip3 install pycryptodome
注册一个百度云账号,申请文字识别OCR服务,获取服务的 api_key
和 secret_key
不懂的话可以百度或者看 百度云的文档
- 修改
_config.json
内容,并重命名为config.json
python3 ./src/auto_clock_in.py
在校或在家,根据 type_
不同打卡信息不同.
根据其他参数,可选为at_school
或 at_home
.
是否发送邮件提醒,可选为 true
或 false
.
调用百度云OCR的参数,api_key
与 secret_key
是必须的.
登录用信息,包含 id
, pwd
.
id
: 学号pwd
: 密码, 默认 base64 加密.
打卡用信息,分为 at_school
, at_home
两类.
需要修改的有:
RealAddress
: 详细地址RealCity
: 市区/县RealProvince
: 省
邮箱使用配置, 包含 host
, sender
, auth
, receivers
;
-
host
: 邮箱服务主机 -
sender
: 邮件发送方,需要与auth
对应 -
auth
: 邮箱授权码,需要与sender
对应,默认使用 base64 加密 -
receivers
: 邮件接收方,可以有多个,固为数组
原本只写了 selenium 自动化的,后来和同学一聊发觉页面登录时的 token 可以 get 直接拿,比原本想的还要简单...
所以补充一个只用 requests 的更简单的版本.
已改为 1 点自动打卡,并添加了邮箱提醒;
0 点打开后端有时候还认为是前一天...
有问题可以 issues ,如果页面或者接口变了和我说下...
2022.7 原本提示不能网页端打卡准备一直手动了,结果现在又可以了;重新检查网页发现加了些新的验证,简单改改自动打卡复活! 这xx打卡系统能不能不要自己出问题啊,真的是。。。
2022.10 打卡系统两部分更新,一方面继续原本的 md5 加密,另一个是账号密码 des 加密。 另外如果使用发觉登录报错非法字符,检查密码是不是有
and
,or
之类的连接符。