一个基于 Python 的 Telegram 自动签到机器人。
该项目通过 Telegram 用户账号执行签到,并使用 Telegram Bot 接收指令进行控制,支持用户权限验证、环境变量配置和日志输出,适合部署在服务器长期运行,实现自动化签到。
- 自动执行每日签到
- 使用 Telegram Bot 发送指令控制
- 通过 Telegram 用户账号执行签到
- 用户 ID 权限控制,防止他人滥用
- 使用
.env进行配置 - 支持时区设置
- 日志输出便于调试和排错
- 轻量级、易部署
Telegram-check-in-bot
│
├── sign_bot.py # 主程序
├── .env # 配置文件(需自行创建)
├── requirements.txt # Python依赖
└── README.md # 项目说明
- Python 3.8 或更高版本
安装依赖:
pip install -r requirements.txt如果没有 requirements.txt 可以手动安装:
pip install telethon python-telegram-bot python-dotenv pytz在项目目录创建 .env 文件:
# Telegram 用户账号(用于执行签到)
API_ID=
API_HASH=
PHONE_NUMBER=
# 控制机器人(用于收指令,不负责签到)
BOT_TOKEN=
# 允许控制机器人的 Telegram 用户 ID
ALLOWED_USER_ID=
# 时区
TIMEZONE=Asia/Shanghai
Telegram API ID
获取地址:
登录后进入:
API development tools
创建应用即可获取 API_ID 和 API_HASH。
Telegram API HASH
与 API_ID 一起使用。
Telegram 账号手机号,例如:
+8613800000000
首次运行时需要输入 Telegram 验证码。
Telegram 机器人 Token。
通过机器人:
@BotFather
创建机器人后获取 Token。
允许控制机器人的 Telegram 用户 ID。
获取方法:
使用机器人:
@userinfobot
发送消息即可获取你的用户 ID。
机器人使用的时区,例如:
Asia/Shanghai
在项目目录运行:
python sign_bot.py首次运行时:
- Telegram 会发送验证码
- 在终端输入验证码完成登录
登录成功后会自动生成会话文件,下次无需再次登录。
在 Telegram 中向你的机器人发送命令即可触发签到,例如:
/sign
机器人会验证用户 ID,只有授权用户才能执行。
建议部署在 VPS 或云服务器长期运行。
可以使用:
screen -S bot
python sign_bot.py
后台运行。
- 不要泄露
.env文件 - 不要公开
BOT_TOKEN - 建议将
.env加入.gitignore
示例 .gitignore:
.env
__pycache__/
*.pyc
本项目仅用于学习和自动化技术研究。
请遵守相关平台的使用规则,因使用本项目造成的任何问题由使用者自行承担。
MIT License