编程 TrendRadar深度解析:55K Star的AI舆情监控神器,如何用30秒告别信息过载

2026-05-11 12:58:42 +0800 CST views 12

TrendRadar 深度解析:55K Star 的 AI 舆情监控神器,如何用 30 秒告别信息过载

你每天花多少时间在刷微博、盯抖音、看知乎热搜?

算下来,可能半小时起步。更要命的是,刷完了,脑子里留不下几件真正有价值的信息——算法喂给你的,永远是它想让你看的,而不是你需要知道的。

今天要聊的这个开源项目,就是来解决这个问题的。

TrendRadar,GitHub 55K+ Star,一款基于 MCP 架构的 AI 舆情监控工具。监控 35 个平台,自动筛选推送,手机通知直达。从被动刷屏到主动监控,30 秒完成部署。


一、信息过载的四个致命痛点

在聊 TrendRadar 之前,先承认一个问题:人工舆情监控天然有四个缺陷

信息分散。 热点散落在微博、知乎、抖音、B 站、财联社、华尔街见闻……每个平台都要单独刷,等你切换一圈汇总完,热点已经过气了。

响应太慢。 人工监控只能定时刷新,等你发现一条重大舆情时,它往往已经发酵了好几个小时,最佳干预窗口早就错过了。

IP 容易被封。 批量抓取各平台数据,爬几百条就被封 IP,换 IP 后很快又被限,监控三天打鱼两天晒网。

成本太高。 企业级舆情监控工具(如清博、新榜)月费动不动几千上万,中小企业根本用不起。

这四个痛点,TrendRadar 用一套开源方案全部对上了。


二、TrendRadar 是什么

TrendRadar 是开发者 sansan(GitHub @sansan0)于 2025 年 4 月开源的一个热点新闻聚合与智能分析工具。GitHub 地址:

https://github.com/sansan0/TrendRadar

核心定位一句话:让用户从被动刷屏,转变为主动监控

项目自 2025 年 11 月登顶 GitHub Trending 月榜第一,单月暴涨 24,645 个 Star,目前累计 Star 数已突破 55K,最新版本 v3.4.0,最近一次提交是 2026 年 5 月 7 日,社区仍在活跃维护中。


三、三层架构:爬取 → 筛选 → 推送

TrendRadar 的工作原理可以拆解为三层。

第一层:多平台热点聚合

TrendRadar 支持监控 35+ 个平台,覆盖以下类别:

类别平台列表
社交媒体微博、知乎、抖音、小红书、B 站
搜索引擎百度热搜、百度贴吧、搜狗热搜
资讯媒体今日头条、腾讯新闻、网易新闻、凤凰财经
财经金融财联社、华尔街见闻、同花顺、东方财富
技术社区GitHub Trending、稀土掘金、SegmentFault
其他微信搜一搜、36氪、虎嗅等

每个平台的爬取策略独立配置,支持定时任务自动抓取,数据存本地 SQLite,支持 Docker 部署。

第二层:智能关键词筛选

这一层是 TrendRadar 最核心的差异化能力。用户在 config/frequency_words.txt 中配置关键词,系统支持四种过滤语法:

# 普通词:标题包含任意一个即匹配
人工智能
大模型
开源

# 必须词(+):必须同时包含该词和组内其他普通词
+阿里云
+降价

# 过滤词(!):包含该词则排除
广告
推广

# 数量限制:限制每个词组返回的新闻数量
人工智能:5
大模型:3

此外还支持:

  • 词组管理:用 [] 将多个词组成词组
  • 关键词排序:越靠前优先级越高,影响新闻展示顺序
  • 热度权重:综合考虑排名、持续时间、排名质量三个维度重新整理热搜

这套语法看起来简单,但实际体验下来非常精准——配置好关键词后,推过来的每一条都是"我真正想看的"。

第三层:MCP AI 分析

TrendRadar 内置了一个基于 MCP(Model Context Protocol)的 AI 分析服务,提供 20 种分析工具,用户可以用自然语言对话的方式对热点新闻进行深度挖掘:

  • 趋势追踪:某话题在不同时间段的热度变化
  • 情感分析:正/负面情绪占比
  • 相似检索:找出与当前新闻相似的其他报道
  • 话题扩散分析:话题从哪个平台起源、如何在全网扩散
  • 关联人物/事件:新闻中涉及的关键人物和事件的关联图谱
  • 时间线重建:还原事件的完整时间线
  • 对比分析:两个话题在同一时间段的热度对比

所有工具通过 MCP 协议接入,不绑定具体 LLM 提供商,支持 DeepSeek、Qwen、OpenAI 等多种模型自由切换。


四、部署:30 秒,不需要会编程

TrendRadar 的安装体验在开源工具里属于顶级。

Windows 用户

下载项目后,双击运行 setup-windows.bat,会自动安装 Python 环境、配置依赖、启动服务。全程不需要敲一行代码。

Mac / Linux 用户

# 方式一:pip 安装
pip install trend-radar

# 方式二:Docker 一键启动
docker run -d -p 8000:8000 \
  -v $(pwd)/config:/app/config \
  -v $(pwd)/data:/app/data \
  sansan0/trendradar

GitHub Actions 自动更新

如果不想自己维护服务器,TrendRadar 支持 GitHub Actions Cron 定时任务,可以把抓取和推送全放在 GitHub 的服务器上跑,完全零成本。

# .github/workflows/trend-radar.yml
name: TrendRadar Auto Update
on:
  schedule:
    - cron: '0 */4 * * *'  # 每4小时运行一次
  workflow_dispatch:
jobs:
  update:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run TrendRadar
        run: docker run --rm -v ${{ github.workspace }}/config:/app/config sansan0/trendradar

五、推送:微信、飞书、钉钉,1 分钟到手机

抓到新闻只是第一步,推送不及时等于没用。TrendRadar 支持 9 种推送渠道,总有一款适合你:

推送渠道适用场景
企业微信企业团队协作,舆情通报
个人微信个人用户,通过第三方回调
飞书互联网公司,团队通知
钉钉阿里系企业
Telegram开发者、技术人群
邮件正式报告,定时汇总
Slack国际化团队
ntfy开源自托管通知
BarkiOS 用户,超低延迟

推送内容的格式也支持自定义,可以选择纯文本摘要、AI 分析简报、或者完整新闻卡片。


六、技术栈与源码架构

TrendRadar 的技术栈非常简洁,适合作为学习参考:

  • 语言:Python 3
  • 数据库:SQLite(轻量,数据本地存储)
  • Web 服务:FastAPI(可选,用于 API 访问)
  • AI 分析:MCP 协议 + OpenAI/DeepSeek 等兼容 API
  • 部署:Docker(跨平台一键部署)
  • 调度:GitHub Actions / 本地 Cron

源码目录结构:

TrendRadar/
├── config/              # 关键词配置、推送配置
│   ├── frequency_words.txt
│   └── push_config.json
├── data/                # SQLite 数据库存储
├── mcp_server/          # MCP AI 分析服务
│   ├── tools/           # 20种分析工具
│   └── mcp.py
├── crawlers/            # 各平台爬虫(每个平台独立模块)
├── docker/
├── _image/              # 部署截图资源
└── main.py              # 入口

爬虫模块采用插件化设计,新增一个平台只需在 crawlers/ 下新增一个 Python 文件,定义好接口即可。代码量不大,5000+ 行左右,适合通读学习。


七、适用人群

TrendRadar 不是万能的,以下场景特别适合:

✅ 强烈推荐

  • 媒体从业者:监控热点,第一时间获取选题线索
  • 市场运营:追踪品牌舆情,发现负面苗头
  • 产品经理:监控竞品动态和行业趋势
  • 投资人/创业者:追踪赛道热点,把握行业风向
  • 自媒体创作者:找选题、追热点、蹭流量

⚠️ 不适合

  • 需要全量数据而不是热点的场景(爬虫策略基于热搜,不是全量抓取)
  • 需要精准舆情量化分析的正式商业报告(建议使用清博、新榜等企业级工具)

八、20 种 AI 分析工具详解

这是 TrendRadar 最硬核的部分。以下是 MCP Server 提供的全部 20 种分析工具,按用途分类:

热点追踪类

  1. get_trending_news - 获取当前各平台热搜
  2. get_news_by_keyword - 按关键词搜索新闻
  3. get_news_by_platform - 按平台获取新闻
  4. get_news_by_time_range - 按时间范围查询

分析推理类

  1. analyze_trend - 话题热度趋势分析
  2. analyze_sentiment - 情感分析(正/负/中性)
  3. analyze_similarity - 相似新闻检索
  4. analyze_topic_diffusion - 话题扩散路径分析
  5. analyze_correlation - 人物/事件关联分析
  6. analyze_timeline - 事件时间线重建
  7. analyze_comparison - 两个话题热度对比
  8. analyze_contrast - 同一话题不同平台对比
  9. analyze_evolution - 话题演变分析

信息获取类

  1. get_hot_comments - 获取热门评论
  2. get_related_events - 获取相关联事件
  3. get_platform_distribution - 平台分布分析
  4. get_event_summary - 事件摘要生成

高级工具

  1. analyze_causality - 因果分析(话题A是否导致话题B)
  2. analyze_forecast - 热度预测
  3. analyze_potential_risk - 潜在风险识别

使用方式也很简单,以 analyze_sentiment 为例:

# 通过 MCP 调用情感分析
result = mcp.analyze_sentiment(
    topic="小米汽车 SU7",
    time_range="7d",
    platforms=["微博", "知乎", "抖音"]
)
# 返回:正面 62%、负面 21%、中性 17%

九、MCP 架构:为什么选 MCP 而不是直接调 API

你可能会问:直接调 LLM API 不就行了,为什么还要套一层 MCP?

答案是解耦和扩展性

MCP 的核心价值在于:

  1. 协议标准化:TrendRadar 的 AI 分析能力不绑定具体 LLM。换模型、换 API 提供商,只需改配置,不动代码。
  2. 工具注册机制:20 种分析工具通过 MCP 的 tools/listtools/call 协议注册和调用,LLM 可以自然语言调用任意工具,不需要手动写调用代码。
  3. 上下文管理:MCP Server 维护长期记忆,可以跨对话追踪话题演变。
  4. 生态共享:TrendRadar 的 MCP Server 可以被其他 MCP 客户端(如 Claude Desktop、Cursor)直接调用。

换句话说,TrendRadar 不只是一个舆情工具,它还是一个以舆情数据为核心的 MCP 工具库,可以被任何支持 MCP 的 AI 应用接入使用。


十、常见问题

Q:会被平台封 IP 吗?
A:TrendRadar 的爬虫默认只抓各平台的公开热搜榜,不做深度抓取,风险较低。企业用户建议配合代理池使用。

Q:数据存在哪里?
A:本地 SQLite 数据库(data/ 目录),也可以配置连接远程 MySQL/PostgreSQL。

Q:微信推送需要服务器吗?
A:个人微信推送需要一台低配服务器运行回调服务(约 50 元/月)。企业微信/飞书/钉钉推送只需配置 Webhook URL,纯静态部署即可。

Q:和 RSS 有什么区别?
A:RSS 是"有人更新我就推",TrendRadar 是"符合我关键词的才推"。后者信息密度高得多。

Q:数据准确吗?
A:TrendRadar 的数据源是各平台的公开热搜榜,准确性取决于平台本身的热搜算法。对比测试下来,知乎、微博、百度热搜的覆盖率最高。


结语

TrendRadar 解决的不是技术问题,而是信息获取方式的问题。

它把"我去找信息"变成了"信息来找我"。配合关键词精准过滤和 MCP AI 分析,你每天收到的推送不再是噪音,而是真正值得你花时间关注的内容。

更重要的是,这一切是开源的、免费的、可自托管的。

对于不想被算法喂垃圾、又不想花大钱买企业舆情工具的人来说,TrendRadar 几乎是当前最优解。


项目地址:https://github.com/sansan0/TrendRadar
Star 数:55K+
最新版本:v3.4.0
作者:@sansan0
许可证:MIT
适用人群:媒体/运营/产品/投资人/个人知识管理

推荐文章

Manticore Search:高性能的搜索引擎
2024-11-19 03:43:32 +0800 CST
CSS实现亚克力和磨砂玻璃效果
2024-11-18 01:21:20 +0800 CST
详解 Nginx 的 `sub_filter` 指令
2024-11-19 02:09:49 +0800 CST
微信内弹出提示外部浏览器打开
2024-11-18 19:26:44 +0800 CST
使用 Nginx 获取客户端真实 IP
2024-11-18 14:51:58 +0800 CST
平面设计常用尺寸
2024-11-19 02:20:22 +0800 CST
MySQL 日志详解
2024-11-19 02:17:30 +0800 CST
go命令行
2024-11-18 18:17:47 +0800 CST
2025,重新认识 HTML!
2025-02-07 14:40:00 +0800 CST
如何在Rust中使用UUID?
2024-11-19 06:10:59 +0800 CST
网络数据抓取神器 Pipet
2024-11-19 05:43:20 +0800 CST
程序员茄子在线接单