工学云自动签到

前情提要

原作者项目:XuanRanDev/Auto-GongXueYun-2: 蘑菇钉 & 工学云 自动打卡

帮作者点一下右上角的star(星星)

image-20240202163336873

仅供学习交流测试!您必须在下载或Fork此源码的24小时内删除所有内容!!

1、请务必认真阅读此文档后继续!

2、本项目开源&免费,所有开发均仅限于学习交流,禁止用于任何商业用途。

3、如基于或参考此项目进行二次开发,请注明原作者并使用GPL2.0许可证开源

4、使用本项目对自己账号有一定的风险,在这里本站不承担任何责任和后果,所有危险后果自负,一切由使用者本人负责(到这里如果介意了可以退出本站,不用继续看了)

效果呈现

image-20240202174740537

使用教程

服务器部署(可以先用虚拟机测试)

目前已知腾讯云、阿里云以及部分百度云的服务器、云函数IP被工学云拉黑,如果你使用以上云服务商产品不用再费时间了,华为云应该可用,有自己的服务器最好。

以下服务器为centos7.6挂机宝,python36

1.下载源码

image-20240202162848220

2.解压至根目录

image-20240202163014612

3.自行安装python环境这里不做解释

1
2
3
4
python3 --version
which python3
pip3 install requests #安装本项目必要模块
#不用版本的Python指令略有不同,自行解决

image-20240202163221726

4.创建执行脚本

1
2
3
4
cat >/root/test.sh <<'EOF'
#! /bin/bash
/usr/bin/python3 /root/Auto-GongXueYun-2-master/main.py
EOF

注意:这里的/usr/bin/python3要和前面的运行的

which python3给出的路径要一样

5.设置定时任务(centos应该都自带crontab定时工具)

1
2
3
4
5
6
7
#加入定时任务
[root@ser386502002493 ~]# crontab -e
#写入四行定时任务表达式
30 8 * * 1-5 bash /root/test.sh
0 11 * * 1-5 bash /root/test.sh
06 18 * * 1-5 bash /root/test.sh
0 23 * * 1-5 bash /root/test.sh

以下是对每行的解释:

  1. 30 8 * * 1-5 bash /root/test.sh
    • 每周一至周五的早上 8:30 执行 /root/test.sh 脚本。
  2. 0 11 * * 1-5 bash /root/test.sh
    • 每周一至周五的上午 11:00 执行 /root/test.sh 脚本。
  3. 06 18 * * 1-5 bash /root/test.sh
    • 每周一至周五的下午 6:06 执行 /root/test.sh 脚本。
  4. 0 23 * * 1-5 bash /root/test.sh
    • 每周一至周五的晚上 11:00 执行 /root/test.sh 脚本。

推荐一个工具Cron - 在线Cron表达式生成器 (ciding.cc)

image-20240202164254637

保存退出即可

这里就是脚本的执行时间:

比如我八点半上班,脚本就会执行一次,晚上6:00下班,脚本就会在6:18执行一次,尽量不要整点,有可能打不到卡(和自己时间有冲突的该这两个就行了,每日检查的时间就不用改了)

至于11点和23点是脚本由的每日检查功能,如果上班和下班没签到成功,就在这两个时间进行补签

自己根据自己的工作情况调整

脚本判断上下班逻辑十二点之前都是上班,十二点之后是下班

创建用户列表

创建一个名为user.json的文件放在项目的根目录

image-20240202165505789

将以下信息写入user.json这里展示的是两个用户,一个用户可以自行删除一个数据体

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
[
{
"enable": true,
"phone": "18666666666",
"password": "1111111111",
"keepLogin": false,
"token": "如果keepLogin为false就不填",
"userId": "如果keepLogin为false就不填",
"planId": "如果keepLogin为false就不填",
"randomLocation": true,
"user-agent": "null",
"signCheck": false,
"country": "中国",
"province": "河南省",
"city": "洛阳市",
"area": "新安县",
"desc": "打卡备注",
"type": "android",
"address": "你的详细地址",
"longitude": "1xx.xxxx",
"latitude": "2x.xxxxx9",
"pushKey": "dhsajifysfsafsdfdsxxxxxx"
},
{
"enable": true,
"phone": "18612366",
"password": "1111111111",
"keepLogin": false,
"token": "如果keepLogin为false就不填",
"userId": "如果keepLogin为false就不填",
"planId": "如果keepLogin为false就不填",
"randomLocation": true,
"user-agent": "null",
"signCheck": false,
"country": "中国",
"province": "广东省省",
"city": "广州市",
"area": "天河区",
"desc": "打卡备注",
"type": "android",
"address": "你的详细地址",
"longitude": "1xx.xxxx",
"latitude": "2x.xxxxx9",
"pushKey": "dhsajifysfsafsdfdsxxxxxx"
}
]

经纬度查询经纬度查询 - 坐标拾取系统 (bmcx.com)

pushkey获取方式关注pushplus公众号发送token

image-20240202171929526

推送服务

因原作者的源码推送服务为第三方服务,pushplsh服务存在一定的推送不到的情况,于是我进行了更换另外一家名为息知的推送服务

  1. 这里为了方便大家后续操作,须自行下载我的文件,去替换原项目的文件,若有一定的Python基础,可自行更换推送服务

https://qianyios.lanzoul.com/iNF531n2nvof 密码:6666

image-20240202170907489

  1. 更新用户数据体,为了更完美的贴合我的文件,你需要更新用户列表数据体
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[
{
"enable": true,
"name": "张三",
"phone": "18111111111",
"password": "ABX111.",
"keepLogin": false,
"token": "如果keepLogin为false就不填",
"userId": "如果keepLogin为false就不填",
"planId": "如果keepLogin为false就不填",
"randomLocation": true,
"user-agent": "null",
"signCheck": true,
"country": "中国",
"province": "广东省",
"city": "xx市",
"area": "xx县",
"desc": "",
"type": "android",
"address": "广东省 · xx市 · xx县 · xx镇xxxxxxxx",
"longitude": "1xx.xxxx",
"latitude": "2x.xxxxx9",
"xizhiurl": "https://xizhi.qqoq.net/XZe0a095cxxxxxxxxxxxxxxxxx41fc1.send"
}
]

经纬度自行查找

“longitude”: “1xx.xxxx”,
“latitude”: “2x.xxxxx9”,

经纬度查询 - 坐标拾取系统 (bmcx.com)

增加的东西:

“name”: “张三”

“xizhiurl”: “https://xizhi.qqoq.net/XZe0a095cxxxxxxxxxxxxxxxxx41fc1.send
息知密钥,后续会说怎么来的

“address”: “广东省 · xx市 · xx县 · xx镇xxxxxx”,
#工学云的地址要加上’ · ‘前后由两个空格,这里写的地址,就会在工学云呈现

建议开启

“signCheck”: true 每日检查

最后息知密钥的获取方式,关注息知公众号发送密钥即可,然后填入用户数据体

image-20240202171258021

特别声明
千屹博客旗下的所有文章,是通过本人课堂学习和课外自学所精心整理的知识巨著
难免会有出错的地方
如果细心的你发现了小失误,可以在下方评论区告诉我,或者私信我!
非常感谢大家的热烈支持!