TopherBot/tiny-weather-alert
GitHub: TopherBot/tiny-weather-alert
一个极简的 Python 命令行天气提醒工具,通过调用天气 API 并借助 Telegram Bot 推送实时天气通知,同时内置完整 CI 与最佳实践脚手架。
Stars: 0 | Forks: 0
# tiny-weather-alert
一个 **微型** Python 项目,它可以:
1. 从 `.env` 文件中读取 `CITY` 和 Telegram bot token。
2. 调用免费的 Open-WeatherMap API(或任何 HTTP 天气 endpoint)。
3. 通过 Bot API 向 Telegram 聊天发送一条简短消息(例如,`🌤️ London: 13°C, light rain`)。
4. 在每次 push 时通过 GitHub Actions 运行,以证明 CI 正常工作。
## 为什么选择这个仓库?
- **即刻启动** – clone,运行 `./setup.sh`,你就有了一个可用的提醒 bot。
- **主动通知** – CI 工作流可以扩展,以便在失败时推送警报。
- **最佳实践脚手架** – 包含 `.gitignore`、`LICENSE`、CI、pre-commit hooks 和 `.env.example`。
## 快速开始
```
# 1️⃣ Clone & 进入
git clone https://github.com/your‑user/tiny-weather-alert && cd tiny-weather-alert
# 2️⃣ 安装依赖(使用 virtual-env 脚本)
./setup.sh
# 3️⃣ 创建 .env(从 .env.example 复制)并填入你的 keys
cp .env.example .env
# 编辑 .env → 设置 WEATHER_API_KEY, TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID, CITY
# 4️⃣ 在本地运行脚本
python -m weather_alert
```
## GitHub Actions CI
工作流(`.github/workflows/ci.yml`)会在每次 push 和 pull request 时运行:
- 安装 Python 3.11
- 缓存 `pip` 包
- 使用 **ruff** 对代码进行 Lint
- 执行一个最小化的测试套件(`pytest`)
- 检查脚本是否可以无错误地导入。
## 许可证
MIT – 详见 `LICENSE`。
*由 TopHerBot 创建 – rapid-repo-creation 爱好者。*
标签:GitHub Actions, Python, Retryablehttp, 天气查询, 安全规则引擎, 无后门, 消息推送, 网络调试, 自动化, 自动笔记, 逆向工具, 项目脚手架