NT

nicholas678/trendradar

开发工具
22 stars 11 forks 质量 91 趋势 30GPL-3.0

🎯 告别信息过载,AI 助你看懂新闻资讯热点,简单的舆情监控分析 - 多平台热点聚合+基于 MCP 的AI分析工具。监控35个平台(抖音、知乎、B站、华尔街见闻、财联社等),智能筛选+自动推送+AI对话分析(用自然语言深度挖掘新闻:趋势追踪、情感分析、相似检索等13种工具)。

概览

看页面顶部的仓库地址: - github.com/你的用户名/TrendRadar ← 你 fork 的版本 - github.com/sansan0/TrendRadar ← 最新官方版本 - 感谢** 的贡献者,你们的每一条反馈让项目更加完善😉; - 感谢** 的观众们, 你所欲也, 我所欲也,两者得兼😍是对开源精神最好的支持; - 感谢** 的读者们,你们的留言、点赞、分享和推荐等积极互动让内容更有温度😎。 本项目使用 newsnow 项目的 API 获取多平台数据,特别感谢作者提供的服务。 经联系,作者表示无需担心服务器压力,但这是基于他的善意和信任。请大家: - - Docker 部署时,请合理控制推送频率,勿竭泽而渔 感谢**的朋友们,你们的慷慨已化身为键盘旁的零食饮料,陪伴着项目的每一次迭代。 ,如仍想支持作者,可前往公众号文章底部点击"喜欢作者"。 一位可爱猫头像的朋友,不知你从哪个角落翻到了我的收款码,三连了 1.8,心意已收到,感谢厚爱 - 知乎 - 抖音 - bilibili 热搜 - 华尔街见闻 - 贴吧 - 百度热搜 - 财联社热门 - 澎湃新闻 - 凤凰网 - 今日头条 - 微博 💡 - 🔄 不想看到重复新闻 → 用 incremental(增量监控) - 📊 想看完整榜单趋势 → 用 current(当前榜单) - 📝 需要每日汇总报告 → 用 daily(当日汇总) 详细对比和配置教程见 配置详解 - 推送模式详解 - 设定推送时间范围(如 09:00-18:00),只在指定时间内推送 - 可配置窗口内多次推送或每天仅推送一次 - 避免非工作时间打扰

README

本项目以轻量,易部署为目标

📑 快速导航

  • 感谢耐心反馈 bug 的贡献者,你们的每一条反馈让项目更加完善😉;
  • 感谢为项目点 star 的观众们,fork 你所欲也,star 我所欲也,两者得兼😍是对开源精神最好的支持;
  • 感谢关注公众号 的读者们,你们的留言、点赞、分享和推荐等积极互动让内容更有温度😎。

✨ 核心功能

全网热点聚合

  • 知乎
  • 抖音
  • bilibili 热搜
  • 华尔街见闻
  • 贴吧
  • 百度热搜
  • 财联社热门
  • 澎湃新闻
  • 凤凰网
  • 今日头条
  • 微博

默认监控 11 个主流平台,也可自行增加额外的平台

💡 详细配置教程见 配置详解 - 平台配置

智能推送策略

三种推送模式:

模式 适用场景 推送特点
当日汇总 (daily) 企业管理者/普通用户 按时推送当日所有匹配新闻(会包含之前推送过的)
当前榜单 (current) 自媒体人/内容创作者 按时推送当前榜单匹配新闻(持续在榜的每次都出现)
增量监控 (incremental) 投资者/交易员 仅推送新增内容,零重复

💡 快速选择指南:

  • 🔄 不想看到重复新闻 → 用 incremental(增量监控)
  • 📊 想看完整榜单趋势 → 用 current(当前榜单)
  • 📝 需要每日汇总报告 → 用 daily(当日汇总)

详细对比和配置教程见 配置详解 - 推送模式详解

附加功能 - 推送时间窗口控制(可选):

  • 设定推送时间范围(如 09:00-18:00),只在指定时间内推送
  • 可配置窗口内多次推送或每天仅推送一次
  • 避免非工作时间打扰

💡 此功能默认关闭,配置方法见 快速开始

精准内容筛选

设置个人关键词(如:AI、比亚迪、教育政策),只推送相关热点,过滤无关信息

基础语法(4种):

  • 普通词:基础匹配
  • 必须词 +:限定范围
  • 过滤词 !:排除干扰
  • 数量限制 @:控制显示数量(v3.2.0 新增)

高级功能(v3.2.0 新增):

  • 🔢 关键词排序控制:按热度优先 or 配置顺序优先
  • 📊 显示数量精准限制:全局配置 + 单独配置,灵活控制推送长度

词组化管理:

  • 空行分隔,独立统计不同主题热点

💡 基础配置教程:关键词配置 - 基础语法

💡 高级配置教程:关键词配置 - 高级配置

💡 也可以不做筛选,完整推送所有热点(将 frequency_words.txt 留空)

热点趋势分析

实时追踪新闻热度变化,让你不仅知道"什么在热搜",更了解"热点如何演变"

  • 时间轴追踪:记录每条新闻从首次出现到最后出现的完整时间跨度
  • 热度变化:统计新闻在不同时间段的排名变化和出现频次
  • 新增检测:实时识别新出现的热点话题,用🆕标记第一时间提醒
  • 持续性分析:区分一次性热点话题和持续发酵的深度新闻
  • 跨平台对比:同一新闻在不同平台的排名表现,看出媒体关注度差异

💡 推送格式说明见 配置详解 - 推送格式参考

个性化热点算法

不再被各个平台的算法牵着走,TrendRadar 会重新整理全网热搜:

  • 看重排名高的新闻(占60%):各平台前几名的新闻优先显示
  • 关注持续出现的话题(占30%):反复出现的新闻更重要
  • 考虑排名质量(占10%):不仅多次出现,还经常排在前列

💡 这三个比例可以调整,详见 配置详解 - 热点权重调整

多渠道实时推送

支持企业微信(+ 微信推送方案)、飞书、钉钉、Telegram、邮件、ntfy,消息直达手机和邮箱

多端适配

  • GitHub Pages:自动生成精美网页报告,PC/移动端适配
  • Docker部署:支持多架构容器化运行
  • 数据持久化:HTML/TXT多格式历史记录保存

AI 智能分析(v3.0.0 新增)

基于 MCP (Model Context Protocol) 协议的 AI 对话分析系统,让你用自然语言深度挖掘新闻数据

  • 对话式查询:用自然语言提问,如"查询昨天知乎的热点"、“分析比特币最近的热度趋势”
  • 13 种分析工具:涵盖基础查询、智能检索、趋势分析、数据洞察、情感分析等
  • 多客户端支持:Cherry Studio(GUI 配置)、Claude Desktop、Cursor、Cline 等
  • 深度分析能力:
    • 话题趋势追踪(热度变化、生命周期、爆火检测、趋势预测)
    • 跨平台数据对比(活跃度统计、关键词共现)
    • 智能摘要生成、相似新闻查找、历史关联检索

💡 使用提示:AI 功能需要本地新闻数据支持

  • 项目自带 11月1-15日 测试数据,可立即体验
  • 建议自行部署运行项目,获取更实时的数据

详见 AI 智能分析

零技术门槛部署

GitHub 一键 Fork 即可使用,无需编程基础。

30秒部署: GitHub Pages(网页浏览)支持一键保存成图片,随时分享给他人

1分钟部署: 企业微信(手机通知)

💡 提示: 想要实时更新的网页版?fork 后,进入你的仓库 Settings → Pages,启用 GitHub Pages。效果预览。

减少 APP 依赖

从"被算法推荐绑架"变成"主动获取自己想要的信息"

适合人群: 投资者、自媒体人、企业公关、关心时事的普通用户

典型场景: 股市投资监控、品牌舆情追踪、行业动态关注、生活资讯获取

Github Pages 效果(手机端适配、邮箱推送效果) 飞书推送效果

📝 更新日志

升级说明:

  • 📌 查看最新更新:原仓库更新日志
  • 提示:不要通过 Sync fork 更新本项目,建议查看【历史更新】,明确具体的【升级方式】和【功能内容】
  • 小版本更新:从 v2.x 升级到 v2.y,用本项目的 main.py 代码替换你 fork 仓库中的对应文件
  • 大版本升级:从 v1.x 升级到 v2.y,建议删除现有 fork 后重新 fork,这样更省力且避免配置冲突

2025/11/25 - v3.4.0

🎉 新增 Slack 推送支持

  1. 团队协作推送渠道

    • 支持 Slack Incoming Webhooks(全球流行的团队协作工具)
    • 消息集中管理,适合团队共享热点资讯
    • 支持 mrkdwn 格式(粗体、链接等)
  2. 多种部署方式

    • GitHub Actions:配置 SLACK_WEBHOOK_URL Secret
    • Docker:环境变量 SLACK_WEBHOOK_URL
    • 本地运行:config/config.yaml 配置文件

📖 详细配置教程:快速开始 - Slack 推送

  • 优化 setup-windows.bat 和 setup-windows-en.bat 一键安装 MCP 的体验

🔧 升级说明:

  • GitHub Fork 用户:更新 main.py、config/config.yaml、.github/workflows/crawler.yml

🚀 快速开始

📖 提醒:Fork 用户建议先 查看最新官方文档,确保配置步骤是最新的。

  1. Fork 本项目到你的 GitHub 账户

    • 点击本页面右上角的"Fork"按钮
  2. 设置 GitHub Secrets(选择你需要的平台):

    在你 Fork 后的仓库中,进入 Settings > Secrets and variables > Actions > New repository secret

    📌 重要说明(请务必仔细阅读):

    • ✅ 一个 Name 对应一个 Secret:每添加一个配置项,点击一次"New repository secret"按钮,填写一对"Name"和"Secret"
    • ✅ 保存后看不到值是正常的:出于安全考虑,保存后重新编辑时,只能看到 Name(名称),看不到 Secret(值)的内容
    • ⚠️ 严禁自创名称:Secret 的 Name(名称)必须严格使用下方列出的名称(如 WEWORK_WEBHOOK_URL、FEISHU_WEBHOOK_URL 等),不能自己随意修改或创造新名称,否则系统无法识别
    • 💡 可以同时配置多个平台:系统会向所有配置的平台发送通知

    配置示例:

    如上图所示,每一行是一个配置项:

    • Name(名称):必须使用下方展开内容中列出的固定名称(如 WEWORK_WEBHOOK_URL)
    • Secret(值):填写你从对应平台获取的实际内容(如 Webhook 地址、Token 等)

    推荐选择:

    用户类型 推荐方案 理由
    普通用户 方式一(免费) 简单快速,够用
    技术用户 方式二(自托管) 完全控制,无限制
    高频用户 方式三(付费) 这个自己去官网看吧

    相关链接:

  3. 手动测试新闻推送:

    💡 完成第1-2步后,请立即测试! 测试成功后再根据需要调整配置(第4步)。

    ⚠️ 重要提醒:请进入你自己 fork 的项目,不是本项目!

    如何找到你的 Actions 页面:

    • 方法一:打开你 fork 的项目主页,点击顶部的 Actions 标签
    • 方法二:直接访问 https://github.com/你的用户名/TrendRadar/actions

    示例对比:

    • ❌ 作者的项目:https://github.com/sansan0/TrendRadar/actions
    • ✅ 你的项目:https://github.com/你的用户名/TrendRadar/actions

    测试步骤:

    1. 进入你项目的 Actions 页面
    2. 找到 “Hot News Crawler” 点进去
      • 如果看不到该字样,参照 #109 解决
    3. 点击右侧的 “Run workflow” 按钮运行
    4. 等待 1 分钟左右,消息会推送到你配置的平台
  4. 配置说明(可选):

    💡 默认配置已可正常使用,如需个性化调整,可参考以下选项

    注意:建议只调整文档中明确说明的配置项,其他选项主要供作者开发时测试使用

  5. 🎉 部署成功!分享你的使用体验

    恭喜你完成了 TrendRadar 的配置!现在你可以开始追踪热点资讯了。

    💬 有更多小伙伴在公众号交流使用心得,期待你的分享~

    • 想了解更多玩法和高级技巧?
    • 遇到问题需要快速解答?
    • 有好的想法想要交流?

    👉 欢迎关注公众号「硅基茶水间」,你的点赞和留言都是项目持续更新的动力。

    详细的交流方式,请查看 → 问题答疑与交流

  6. 想要更智能的分析?试试 AI 增强功能(可选)

    基础配置已经能满足日常使用,但如果你想要:

    • 📊 让 AI 自动分析热点趋势和数据洞察
    • 🔍 通过自然语言搜索和查询新闻
    • 💡 获得情感分析、话题预测等深度分析
    • ⚡ 在 Claude、Cursor 等 AI 工具中直接调用数据

    👉 了解更多:AI 智能分析 — 解锁项目的隐藏能力,让热点追踪更高效!

⚙️ 配置详解

📖 提醒:本章节提供详细的配置说明,建议先完成 快速开始 的基础配置,再根据需要回来查看详细选项。

1. 平台配置

2. 关键词配置

在 frequency_words.txt 文件中配置监控的关键词,支持四种语法和词组功能。

语法类型 符号 作用 示例 匹配逻辑
普通词 无 基础匹配 华为 包含任意一个即可
必须词 + 限定范围 +手机 必须同时包含
过滤词 ! 排除干扰 !广告 包含则直接排除
数量限制 @ 控制显示数量 @10 最多显示10条新闻(v3.2.0新增)

2.1 基础语法

2.2 高级配置(v3.2.0 新增)

3. 推送模式详解

4. 热点权重调整

5. 推送格式参考

6. Docker 部署

🤖 AI 智能分析

TrendRadar v3.0.0 新增了基于 MCP (Model Context Protocol) 的 AI 分析功能,让你可以通过自然语言与新闻数据对话,进行深度分析。

⚠️ 使用前必读

重要提示:AI 功能需要本地新闻数据支持

AI 分析功能不是直接查询网络实时数据,而是分析你本地已积累的新闻数据(存储在 output 文件夹中)

使用说明:

  1. 项目自带测试数据:output 目录默认包含 2025年11月1日~11月15日 的新闻数据,可用于快速体验 AI 功能

  2. 查询限制:

    • ✅ 只能查询已有日期范围内的数据(11月1-15日)
    • ❌ 无法查询实时新闻或未来日期
  3. 获取最新数据:

    • 测试数据仅供快速体验,建议自行部署项目获取实时数据
    • 按照 快速开始 部署运行项目
    • 等待至少 1 天积累新闻数据后,即可查询最新热点

1. 快速部署

Cherry Studio 提供 GUI 配置界面,5 分钟快速部署,复杂的部分是一键安装的。

图文部署教程:现已更新到我的公众号,回复 “mcp” 即可

详细部署教程:README-Cherry-Studio.md

部署模式说明:

  • STDIO 模式(推荐):一次配置后续无需重复配置,图文部署教程中仅以此模式的配置为例。
  • HTTP 模式(备选):如果 STDIO 模式配置遇到问题,可使用 HTTP 模式。此模式的配置方式与 STDIO 基本一致,但复制粘贴的内容就一行,不易出错。唯一需要注意的是每次使用前都需要手动启动一下服务。详细请参考 README-Cherry-Studio.md 底部的 HTTP 模式说明。

2. 学习与 AI 对话的姿势

详细对话教程:README-MCP-FAQ.md

🔌 MCP 客户端

TrendRadar MCP 服务支持标准的 Model Context Protocol (MCP) 协议,可以接入各种支持 MCP 的 AI 客户端进行智能分析。

支持的客户端

注意事项:

  • 将 /path/to/TrendRadar 替换为你的项目实际路径
  • Windows 路径使用双反斜杠:C:\\Users\\YourName\\TrendRadar
  • 保存后记得重启

常见问题

☕问题答疑与交流

如果你想支持本项目,可通过微信搜索腾讯公益,对里面的助学相关的项目随心捐助

感谢参与过一元点赞的朋友,已收录至顶部致谢名单!你们的支持让开源维护更有动力,个人打赏码现已移除。

  • GitHub Issues:适合针对性强的解答。提问时请提供完整信息(截图、错误日志、系统环境等)。
  • 公众号交流:适合快速咨询。建议优先在相关文章下的公共留言区交流,如私信,请文明礼貌用语😉
  • 💡 部署成功了?来公众号说说感受吧,你的点赞和留言都是我继续更新的动力~

🪄 赞助商

302.AI 是按用量付费的企业级 AI 资源平台
提供市场上最新、最全面的 AI 模型和 API,以及多种开箱即用的在线 AI 应用

每天追踪这么多热点,写报告、回复消息是否让手腕疲惫?
试试「闪电说」AI 语音输入法 —— 用说的,比打字快 4 倍 ⚡ 。从看热点到输出内容,让效率翻倍 👇


📚 项目相关

4 篇文章:

AI 开发:

  • 如果你有小众需求,完全可以基于我的项目自行开发,零编程基础的也可以试试
  • 我所有的开源项目或多或少都使用了自己写的AI辅助软件来提升开发效率,这款工具已开源
  • 核心功能:迅速筛选项目代码喂给AI,你只需要补充个人需求即可
  • 项目地址:https://github.com/sansan0/ai-code-context-helper

其余项目

📍 毛主席足迹地图 - 交互式动态展示1893-1976年完整轨迹。欢迎诸位同志贡献数据

哔哩哔哩(bilibili)评论区数据可视化分析软件

本项目流程图

flowchart TD
    A[👤 用户开始] --> B{🚀 选择部署方式}
    
    B -->|云端部署| C1[🍴 Fork 项目到 GitHub]
    B -->|本地部署| C2[🐳 Docker 部署]
    
    C1 --> D[⚙️ 配置通知渠道可同时配置多个]
    C2 --> D
    
    D --> E[选择通知方式:📱企业微信 💬飞书 🔔钉钉📟Telegram 📧邮件]
    
    E --> F[🔑 填写通知参数GitHub Secrets 或环境变量]
    
    F --> G[📝 配置关键词config/frequency_words.txt普通词/必须词+/过滤词!]
    
    G --> H[🎯 选择运行模式config/config.yaml]
    
    H --> H1[📋 daily - 当日汇总定时推送所有匹配新闻]
    H --> H2[📰 current - 当前榜单定时推送最新榜单]
    H --> H3[📈 incremental - 增量监控仅推送新增内容]
    
    H1 --> I[可选:推送时间窗口控制⏰ 限制推送时间范围]
    H2 --> I
    H3 --> I
    
    I --> J[✅ 配置完成]
    
    J --> K[🤖 系统自动运行]
    
    K --> L[🕷️ 爬取11+平台热点]
    L --> M[🔍 关键词筛选]
    M --> N[⚖️ 权重算法排序排名60% + 频次30% + 热度10%]
    N --> O[📊 生成报告HTML网页 + 推送消息]
    O --> P[📱 多渠道推送通知]
    
    P --> Q[🎉 持续接收精准推送告别信息过载]
    
    style A fill:#e3f2fd
    style B fill:#f3e5f5
    style D fill:#fff3e0
    style F fill:#fff9c4
    style G fill:#e8f5e9
    style H fill:#e0f2f1
    style I fill:#fce4ec
    style O fill:#e1bee7
    style Q fill:#c8e6c9

📄 许可证

GPL-3.0 License


在 GitHub 查看完整 README

安装

docker run -d \
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "trendradar": { "command": "uv", "args": [ "--directory", "/path/to/TrendRadar", "run", "python", "-m", "mcp_server.server" ], "env": {}, "disabled": false, "alwaysAllow": [] } } }