v6ole
|
1f18d2ec87
|
feat: 添加中国节假日感知定时功能
- 新增 chinese_holidays 表,通过 timor.tech API 同步节假日数据
- 修正 holiday 字段解读:holiday=true → 休息日,holiday=false → 调休工作日
- 工作日 8:00-22:00 每小时爬取,周末/节假日/夜间自动跳过
- 新增 /api/v1/holidays/sync 和 /api/v1/holidays/today 接口
- 企微菜单新增「同步节假日」按钮,支持手动触发同步
|
2026-05-09 18:27:27 +08:00 |
|
v6ole
|
c3e06c997f
|
fix: 移除 textcard 通知中的 HTML 标签,企业微信客户端不支持
|
2026-05-09 17:54:42 +08:00 |
|
v6ole
|
cbeb3c3504
|
fix: 连接 Pipeline 到爬取流程 + 夜间跳过 + 断网恢复
- CrawlService.run_spider 现在自动调用 PostCrawlPipeline(爬取→存储→筛选→去重→推送)
- 定时任务添加 22:00-06:00 夜间跳过逻辑
- 断网恢复后不会漏公告:爬虫每次从 API 按日期倒序抓取,未推送的公告下次自动补推
- Pipeline 的 _exclude_sent + mark_sent 防止重复推送
|
2026-05-09 16:10:30 +08:00 |
|
v6ole
|
d851dafea9
|
fix: 防止重复推送通知 — 添加已发送检查 + GXGP 标记已发送
- Pipeline 新增 _exclude_sent() 方法,通知前查询数据库跳过 is_sent=True 的公告
- GXGP Spider mark_sent 改为 True,配合去重逻辑防止每次爬取重复通知
|
2026-05-09 16:00:04 +08:00 |
|
v6ole
|
7455d7e426
|
chore: ruff 代码检查与修复
130 issues auto-fixed (import ordering, UP045/UP006 type annotations),
33 issues manually fixed (E712/E501/E402/E722 + N818 rename + per-file
wechat ignore for N8xx naming conventions). All 33 tests pass.
|
2026-05-09 14:28:09 +08:00 |
|
v6ole
|
3616e5799d
|
feat: 添加 NotificationService 通知服务 + 测试
|
2026-05-09 14:11:49 +08:00 |
|
v6ole
|
76b734b0a9
|
fix: 修复 filter_by_date 类型处理 + _save_to_db rowcount 0 值 bug
|
2026-05-09 14:06:59 +08:00 |
|
v6ole
|
cad1390534
|
feat: 添加 PostCrawlPipeline 统一管道 + 筛选服务 + 测试
|
2026-05-09 13:57:37 +08:00 |
|
v6ole
|
022d348052
|
feat: 添加 CrawlService 爬取编排器 + 测试
|
2026-05-09 13:50:58 +08:00 |
|