Skip to content

工学云自动打卡,支持多用户、自定义地区、周报、日报、月报,支持免服务器运行

License

Notifications You must be signed in to change notification settings

Rockytkg/AutoMoGuDingCheckIn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AutoMoGuDingCheckIn(停止维护)

AutoMoGuDingCheckIn 工学云自动打卡,采用新接口,更安全,支持多用户、自定义位置信息、保持登录状态、每日打卡检查、打卡位置浮动、消息推送,免服务器运行

修这个项目的初衷是因为我自己需要使用,但是很多功能都没有人实现,开源的项目还都是使用的老版本的接口,不知道什么时候就废弃了的,以及很多我需要的功能没人开源出来,例如带图打卡、周报月报等,因此我自己写了这个项目。现在我的实习已经结束了,所以这个项目也将会停止更新。天下没有不散的筵席,有缘再会。最后建议可以迁移到下面这个平台,价格算是全网最良心的了

推荐使用 CATKA打卡平台 - 简单易用,全网最低价!

还在为繁琐的实习打卡烦恼吗?CATKA打卡平台,一键解决所有问题!

支持平台: 工学云✔️ 校友邦✔️ 黔职通✔️ 学习通✔️ 习讯云✔️ 职校家园✔️ 云实习助手✔️

功能强大,操作简单:

  • 自动打卡: 每日上下班打卡,解放双手!
  • 自动报告: 日周月报、总结、健康上报,一键搞定!
  • 多账户管理: 支持多账户同时操作,效率翻倍!
  • 指定地区: 精准定位,打卡无忧!
  • 多种推送方式: 实时掌握打卡状态!
  • 批量操作: 批量导入实习账号,批量补卡补报告,省时省力!

全网最低价,性价比之王! 目前打卡仅需 1 毛钱一天,报告免费!

立即体验 CATKA打卡平台,告别繁琐打卡,轻松实习!

项目概述

AutoMoGuDingCheckIn 旨在:

  • 自动化工学云应用中的签到过程。
  • 自动提交月报、周报、日报。
  • 适配云函数

功能列表

  • 自动签到
  • 消息推送功能
  • 多用户支持
  • 打卡位置浮动
  • 自动提交日报
  • 自动提交周报
  • 自动提交月报
  • AI 生成周、日、月报
  • 打卡备注以及带图打卡
  • Github 工作流支持
  • 适配云函数

使用方法

Github 工作流(免服务器部署)

参见 Wiki

切记不要将配置文件上传到公开仓库,否则会造成信息泄露。请使用环境变量!!!,已经泄露请立刻修改工学云密码!!!

本地运行

环境

  • Python 3.10+
  • pip(Python 包管理器)

安装

  1. 克隆代码库:

    git clone https://github.com/Rockytkg/AutoMoGuDingCheckIn.git
    cd AutoMoGuDingCheckIn
  2. 按照下面要求添加配置文件

  3. 执行(linux 系统,windows 需要自行配置计划任务程序)

    chmod +x setup.sh
    bash setup.sh

    按照脚本提示设置定时任务并执行

配置

  1. 打开 user 目录,根据下表修改 json 文件中的配置(每个文件就是一个用户)
配置项 字段 说明 示例
用户信息 phone 工学云手机号,确保号码正确无误。 13800138000
password 工学云密码,注意区分大小写。 your_password
打卡设置 mode 打卡地点的模式,`daily`:每天打上/下班卡,`holiday`:自动识别节假日并根据`specialClockIn`决定打卡类型,`custom`:自定义打卡(需配置`customDays`表示周几打卡) daily
address 打卡地点的详细地址,确保信息准确。 四川省 · 成都市 · 高新区 · 在科创十一街附近
latitude 打卡地点的纬度。 34.059922
longitude 打卡地点的经度。 118.277435
province 所在省份。 四川省
city 所在城市。 成都市
area 所在区域。 高新区
imageCount 打卡时需要上传的图片数量,默认为0。 0
description 打卡备注 列表,一个元素为一条,打卡时候随机抽取,若为空就不带备注
specialClockIn 打卡类型,当打卡模式为`holiday`或者`custom`有效,值设置为`true`时候将会在节假日或者不在`customDays`配置中的时候打`休息/节假日`卡 false
customDays 自定义周几打卡(例子就是周一到周四打卡) 1,2,3,4
报告设置 daily.enabled 是否启用日报提交(true 或 false)。 false
daily.imageCount 日报中需要上传的图片数量。 0
weekly.enabled 是否启用周报提交(true 或 false)。 true
weekly.imageCount 周报中需要上传的图片数量。 0
weekly.submitTime 提交时间 4(表示周四提交周报)
monthly.enabled 是否启用月报提交(true 或 false)。 false
monthly.imageCount 月报中需要上传的图片数量。 0
monthly.submitTime 提交时间 29(每月29号提交月报如果没有29天则会在该月最后一天提交)
AI 设置 model AI 模型名称(可根据需求修改,需要支持OpenAI格式的api,目前国产模型都提供有类似API) gpt-4o-mini
apikey API 密钥,确保无误。 sk-osdhgosdipghpsdgjiosfvinoips
apiUrl API 地址,通常为 `https://api.openai.com/`。 https://api.openai.com/
推送通知设置 type 推送通知的类型(如 Server、PushPlus 等)。 Server
enabled 是否启用该推送通知(true 或 false)。 true
sendKey/token 相应的密钥或令牌。 your_key
channel 对于 AnPush,填写通道 ID,多个用英文逗号隔开。 通道ID1,通道ID2
to 根据官方文档获取的接收者信息。 [email protected]
host SMTP 服务地址。 smtp.example.com
port SMTP 服务端口,通常为 465。 465
username 发件人邮箱地址。 [email protected]
password SMTP 密码。 smtp_password
from 发件人名称。 发件人名称
设备信息 设备信息 设备信息,用这个小工具获取 {brand: TA J20, systemVersion: 17, Platform: Android, isPhysicalDevice: true, incremental: K23V10A}
示例 JSON 配置
{
  "config": {
    "user": {
      "phone": "工学云手机号",
      "password": "工学云密码"
    },
    "clockIn": {
      "mode": "daily",
      "location": {
        "address": "四川省 · 成都市 · 高新区 · 在科创十一街附近",
        "latitude": "30.559922",
        "longitude": "104.093023",
        "province": "四川省",
        "city": "成都市",
        "area": "高新区"
      },
      "imageCount": 0,
      "description": [
        "今天天气不错",
        "今天天气很好",
        "今天天气不太好"
      ],
      "specialClockIn": false,
      "customDays": [
        1,
        3,
        5
      ]
    },
    "reportSettings": {
      "daily": {
        "enabled": false,
        "imageCount": 0
      },
      "weekly": {
        "enabled": true,
        "imageCount": 0,
        "submitTime": 4
      },
      "monthly": {
        "enabled": false,
        "imageCount": 0,
        "submitTime": 29
      }
    },
    "ai": {
      "model": "gpt-4o-mini",
      "apikey": "sk-osdhgosdipghpsdgjiosfvinoips",
      "apiUrl": "https://api.openai.com/"
    },
    "pushNotifications": [
      {
        "type": "Server",
        "enabled": true,
        "sendKey": "your_key"
      },
      {
        "type": "PushPlus",
        "enabled": true,
        "token": "your_token"
      },
      {
        "type": "AnPush",
        "enabled": true,
        "token": "your_token",
        "channel": "通道ID,多个用英文逗号隔开",
        "to": "根据官方文档获取"
      },
      {
        "type": "WxPusher",
        "enabled": true,
        "spt": "your_spt"
      },
      {
        "type": "SMTP",
        "enabled": true,
        "host": "smtp服务地址",
        "port": 465,
        "username": "发件人邮箱",
        "password": "smtp密码",
        "from": "发件人名称",
        "to": "收件人邮箱"
      }
    ],
    "device": "{brand: TA J20, systemVersion: 17, Platform: Android, isPhysicalDevice: true, incremental: K23V10A}"
  }
}
图片提交说明

配置对应的配置项目,将图片放到 images 目录,运行时会自动随机抽取指定数量图片提交

消息推送

支持:

运行

python main.py

许可证

本项目采用 Apache 2.0 许可。详细信息请参阅 LICENSE 文件。

联系方式

如有任何疑问或需要支持,请通过提交 issue 与我们联系。

start

Stargazers over time


About

工学云自动打卡,支持多用户、自定义地区、周报、日报、月报,支持免服务器运行

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published