软件功能
本脚本是一个自动化签到工具,可用于定时访问指定网站并执行签到操作,支持以下功能:
定时自动执行签到任务(可自定义签到时间)
支持从文件加载和管理 Cookie
签到失败时自动重试(可配置重试次数和间隔)
签到结果通过邮件通知(支持 SSL 加密邮件服务器)
详细的日志记录,便于排查问题
自动处理返回结果中的 Unicode 编码,确保中文正确显示
理论上,通过修改base_url和checkin_url,所有支持post请求的签到地址都可以用。
软件下载地址
环境要求
1. Python 3.6 或更高版本
2. 以下 Python 库:
requests:用于发送 HTTP 请求
schedule:用于定时任务调度
3.文件夹里应有以下文件
auto-checkin/
├── auto_checkin.py # 主脚本文件
├── config.json # 配置文件
├── cookies.json # 存储cookie的文件
└── checkin.log # 日志文件,运行后自动生产
安装步骤
安装 Python
如果尚未安装 Python,请从官方网站下载并安装 Python 3.6+。
安装依赖库
打开命令行工具,执行以下命令安装所需库:
pip install requests schedule
配置说明
修改config.json(推荐)
打开config.json文件,修改其中的配置
{
"base_url": "https://改为豆奶url/user", #基础url
"checkin_url": "https://改为豆奶url/user/checkin", #签到url
"cookie_file": "cookies.json", #登录信息保存文件名
"retry_times": 3, #签到重试次数
"retry_delay": 5, #签到重试间隔时间
"checkin_time": "09:13", #每日签到定时
'enable_email_notification': True, # 启用邮件通知(设为False可禁用)
'smtp_server': 'smtp.example.com', # SMTP服务器(如QQ邮箱为smtp.qq.com)
'smtp_port': 465, # SMTP端口(SSL加密通常使用465或587)
'smtp_username': 'your_email@example.com', # 发件人邮箱
'smtp_password': 'your_password', # 发件人邮箱密码/授权码
'email_from': 'your_email@example.com', # 发件人邮箱(通常与smtp_username相同)
'email_to': ['your_email@example.com'], # 收件人邮箱列表(可添加多个)
"smtp_encryption": "ssl" # 使用的协议,可选ssl、starttsl
}
基础配置修改(不推荐)
打开auto_checkin.py文件,找到CONFIG字典,根据实际情况修改参数(与上边的方法类似)
系统会优先读取config.json中的配置文件,如果未找到配置文件,或者配置文件格式错误,会使用auto_checkin.py中的CONFIG配置
使用方法
1. 获取 Cookie
使用chromium内核浏览器安装cookie-Editor软件。
下载地址:
https://microsoftedge.microsoft.com/addons/detail/neaplmfkghagebokkhpjpoebhdledlfi
使用账号登录到目标网站
https://改为豆奶url/user/panel
使用cookie-Editor导出cookie为json格式,打开记事本,粘贴进去,并保存为cookies.json
2. 启动脚本
在命令行中进入脚本所在目录,执行:
python auto_checkin.py
3. 后台运行(可选)
在 Linux/Mac 系统中,可使用nohup命令让脚本在后台运行:
nohup python auto_checkin.py &
运行后,脚本会立即执行一次签到(用于测试),并在每天指定时间自动执行签到任务。
4.日志查看
脚本会在同目录生成checkin.log日志文件,记录所有操作和异常,可通过以下命令查看实时日志:
tail -f checkin.log
注意事项
Cookie 有效期
Cookie 有有效期,过期后需重新获取并更新cookies.json文件。
邮件通知配置
部分邮箱(如 QQ 邮箱)需要使用 "授权码" 而非密码登录 SMTP 服务器
若邮件发送失败,可检查 SMTP 服务器地址、端口、用户名和密码是否正确
QQ邮箱可能会出现邮件已经发送成功但报错的情况,只要能成功收到邮件,无视即可。
签到接口变化
若网站更新了签到接口,需及时修改checkin_url和请求头headers。
反爬机制
请合理设置重试间隔,避免频繁请求触发网站反爬机制。
脚本停止
在命令行中按Ctrl+C可终止脚本运行。
评论