|
|
10 ماه پیش | |
|---|---|---|
| .github | 10 ماه پیش | |
| _image | 11 ماه پیش | |
| config | 10 ماه پیش | |
| docker | 10 ماه پیش | |
| .dockerignore | 10 ماه پیش | |
| LICENSE | 11 ماه پیش | |
| main.py | 10 ماه پیش | |
| readme.md | 10 ماه پیش | |
| requirements.txt | 10 ماه پیش | |
| version | 10 ماه پیش |
如果本项目对你有所帮助,点个 Star ⭐ 就是对我最大的支持。
遇到问题可以直接提 issues。也可以【硅基茶水间】公众号留言问题。
默认监控 11 个主流平台
理论上支持 35 个左右,如果你想增加额外的金融类等相关资讯推送,可看最下方的自定义监控平台
提供三种工作模式满足不同需求:
| 模式 | 推送时机 | 显示内容 | 适用场景 |
|---|---|---|---|
当日汇总模式daily |
按时推送 | 当日所有匹配新闻 + 新增新闻区域 |
日报总结 全面了解当日热点趋势 |
当前榜单模式current |
按时推送 | 当前榜单匹配新闻 + 新增新闻区域 |
实时热点追踪 了解当前最火的内容 |
增量监控模式incremental |
有新增才推送 | 新出现的匹配频率词新闻 | 避免重复信息干扰 高频监控场景 |
incremental,及时获取新增资讯(建议自建服务器进行 docker 部署,提高检测频率)current,掌握实时热点趋势daily,定时获取完整日报设置个人关键词(如:AI、比亚迪、教育政策),只推送相关热点,过滤无关信息
比如关注"新能源",自动筛选出特斯拉降价、政策补贴等相关新闻
支持企业微信、飞书、钉钉、Telegram 主流聊天工具,消息直达手机
GitHub 一键 Fork 即可使用,无需编程基础。
如果要手机接收通知, 要达到 1 分钟部署完毕的效果,请选择企业微信
不再需要频繁打开各种资讯 APP,有效控制手机使用时间
从"被算法推荐绑架"变成"主动获取自己想要的信息"
适合人群: 投资者、自媒体人、企业公关、关心时事的普通用户
典型场景: 股市投资监控、品牌舆情追踪、行业动态关注、生活资讯获取
💡 提示: 想要网页版?进入你的仓库 Settings → Pages,启用 GitHub Pages 即可获得自动更新的新闻页面链接。比如我这里TrendRadar。
升级说明:
main.py 代码替换你 fork 仓库中的对应文件重大重构:
config/config.yaml 文件管理(main.py 我依旧没拆分,方便你们复制升级)daily(当日汇总)、current(当前榜单)、incremental(增量监控)配置文件说明:
config/config.yaml - 主配置文件(应用设置、爬虫配置、通知配置、平台配置等)config/frequency_words.txt - 关键词配置(监控词汇设置)
优化前
|
优化后
|
Fork 本项目到你的 GitHub 账户
设置 GitHub Secrets(选择你需要的平台):
在你 Fork 后的仓库中,进入 Settings > Secrets and variables > Actions > New repository secret,然后根据需要配置以下任一或多个通知平台:
💡 提示: 可以同时配置多个平台,系统会向所有配置的平台发送通知。点击下方对应平台展开详细配置步骤。
🟡 企业微信机器人(配置最简单最迅速)
GitHub Secret 配置:
WEWORK_WEBHOOK_URL机器人设置步骤:
#### 手机端设置:
#### PC 端设置流程类似
🟢 飞书机器人(消息显示最友好)
GitHub Secret 配置:
FEISHU_WEBHOOK_URL机器人设置步骤:
点击"新建机器人应用"
进入创建的应用后,点击"流程涉及" > "创建流程" > "选择触发器"
往下滑动,点击"Webhook 触发"
此时你会看到"Webhook 地址",把这个链接先复制到本地记事本暂存,继续接下来的操作
"参数"里面放上下面的内容,然后点击"完成"
{
"message_type": "text",
"content": {
"total_titles": "{{内容}}",
"timestamp": "{{内容}}",
"report_type": "{{内容}}",
"text": "{{内容}}"
}
}
点击"选择操作" > "发送飞书消息",勾选 "群消息",然后点击下面的输入框,点击"我管理的群组"(如果没有群组,你可以在飞书 app 上创建群组)
消息标题填写"TrendRadar 热点监控"
最关键的部分来了,点击 + 按钮,选择"Webhook 触发",然后按照下面的图片摆放
FEISHU_WEBHOOK_URL
🔵 钉钉机器人
GitHub Secret 配置:
DINGTALK_WEBHOOK_URL机器人设置步骤:
创建机器人(仅 PC 端支持):
配置机器人:
完成设置:
DINGTALK_WEBHOOK_URL注意:移动端只能接收消息,无法创建新机器人。
🟣 Telegram Bot
GitHub Secret 配置:
TELEGRAM_BOT_TOKEN - 你的 Telegram Bot TokenTELEGRAM_CHAT_ID - 你的 Telegram Chat ID机器人设置步骤:
创建机器人:
@BotFather(大小写注意,有蓝色徽章勾勾,有类似 37849827 monthly users,这个才是官方的,有一些仿官方的账号注意辨别)/newbot 命令创建新机器人123456789:AAHfiqksKZ8WmR2zSjiQ7_v4TMAKdiHm9T0)获取 Chat ID:
方法一:通过官方 API 获取
https://api.telegram.org/bot<你的Bot Token>/getUpdates"chat":{"id":数字} 中的数字方法二:使用第三方工具
@userinfobot 并发送 /start配置到 GitHub:
TELEGRAM_BOT_TOKEN:填入第 1 步获得的 Bot TokenTELEGRAM_CHAT_ID:填入第 2 步获得的 Chat ID
配置关键词和设置:
config/frequency_words.txt 文件,添加你关心的关键词config/config.yaml 中修改 report.mode 设置:
"daily" - 当日汇总模式(默认)"current" - 当前榜单模式"incremental" - 增量监控模式
自动运行:
.github/workflows/crawler.yml配置文件,默认每 30 分钟自动运行一次查看结果:
output目录中📊 热点词汇统计
🔥 人工智能 AI : 12 条
1. [百度热搜] 科技巨头发布新AI模型 [1] - 12时30分 (4次)
2. [今日头条] AI技术最新突破 [2] - [13时15分 ~ 14时30分] (2次)
| 格式元素 | 示例 | 含义 | 说明 |
|---|---|---|---|
| 关键词 | 人工智能 AI | 频率词组 | 表示本组匹配的关键词 |
| : N 条 | : 12 条 | 匹配数量 | 该关键词组匹配的标题总数 |
| [平台名] | [百度热搜] | 来源平台 | 标题所属的平台名称 |
| [数字] | [1] | 高排名标记 | 排名 ≤ 阈值(默认 5)的热搜,红色加粗显示 |
| [数字] | [7] | 普通排名标记 | 排名>阈值的热搜,普通显示 |
| - 时间 | - 12 时 30 分 | 首次发现时间 | 标题首次被发现的时间 |
| [时间 ~ 时间] | [12 时 30 分 ~ 14 时 00 分] | 时间范围 | 标题出现的时间范围(首次~最后) |
| (N 次) | (4 次) | 出现次数 | 标题在监控期间出现的总次数 |
本项目的资讯数据来源于 newsnow ,你可以点击网站,点击[更多],查看是否有你想要的平台。
具体添加可访问 项目源代码,根据里面的文件名,在 config/config.yaml 文件中修改 platforms 配置:
platforms:
- id: "toutiao"
name: "今日头条"
- id: "baidu"
name: "百度热搜"
- id: "wallstreetcn-hot"
name: "华尔街见闻"
# 添加更多平台...
克隆项目并进入目录:
git clone https://github.com/sansan0/TrendRadar.git
cd TrendRadar
配置文件:
config/config.yaml 和 config/frequency_words.txt启动服务:
cd docker
docker-compose up -d
管理服务:
# 查看运行状态
docker exec -it trend-radar python manage.py status
# 手动执行一次爬虫
docker exec -it trend-radar python manage.py run
# 查看实时日志
docker exec -it trend-radar python manage.py logs
# 显示当前配置
docker exec -it trend-radar python manage.py config
# 显示输出文件
docker exec -it trend-radar python manage.py files
# 重启定时服务
docker exec -it trend-radar python manage.py restart
# 显示帮助信息
docker exec -it trend-radar python manage.py help
flowchart TD
A[👤 用户开始] --> B[🍴 Fork 项目]
B --> C[⚙️ 选择通知方式]
C --> D1[📱 企业微信群机器人<br/>最简单快速]
C --> D2[💬 飞书机器人<br/>显示效果最佳]
C --> D3[🔔 钉钉机器人<br/>]
C --> D4[📟 Telegram Bot<br/>]
D1 --> E[🔑 配置 GitHub Secrets<br/>填入机器人 Webhook 地址]
D2 --> E
D3 --> E
D4 --> E
E --> F[📝 编辑关键词配置<br/>config/frequency_words.txt<br/>添加你关心的词汇]
F --> G[🎯 选择运行模式<br/>config/config.yaml<br/>daily/current/incremental]
G --> H[✅ 配置完成]
H --> I[🤖 系统每30分钟自动运行]
I --> J[📊 爬取各大平台热点]
J --> K[🔍 根据关键词筛选]
K --> L[📱 推送到你的手机]
L --> M[📈 查看推送结果]
M --> N{满意效果?}
N -->|不满意| F
N -->|满意| O[🎉 持续接收精准推送]
style A fill:#e1f5fe
style B fill:#f3e5f5
style E fill:#fff3e0
style F fill:#e8f5e8
style G fill:#e8f5e8
style L fill:#ffebee
style O fill:#e8f5e8
本项目使用了 newsnow 提供的 API 服务,感谢其提供的数据支持。
GPL-3.0 License