Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

全网热点选题智能监测系统

项目概述

公开展示版: 全网多平台娱乐热点自动聚合 + AI智能评估选题系统,展示强大的信息收集和AI分析能力,作为个人项目展示在个人官网上。

核心价值

  • 技术展示:演示多源信息聚合 + AI评估 + 全栈开发能力
  • 实际可用:自己也可以用它来监控全网娱乐热点
  • 简洁聚焦:去掉多人协作认领环节,只展示核心的信息收集能力

功能特性

📡 多平台热点抓取

  • 支持平台:抖音热点榜、微博热搜、百度热点、知乎热榜
  • 抓取方式:全部使用公开API,不写爬虫
  • 定时任务:Python APScheduler 定时执行,异常重试机制
  • 合规性:只拉取公开热点榜单,不碰隐私数据,无版权风险

🧹 数据预处理

  • 精确去重:关键词完全相同直接去重
  • 语义去重:使用火山引擎Embedding API计算余弦相似度,相似度 > 80% 判定为同一瓜
  • 智能排序:按「1小时热度涨幅」降序排序,新爆瓜排在最前面

🤖 AI智能评估

  • 瓜级判断:超级大瓜、大瓜、中瓜、小瓜
  • 风险评估:低风险、中风险、高风险、禁做
  • 类目识别:出轨/离婚、明星撕逼、法制瓜等
  • 账号匹配:推荐适合的账号类型(娱乐八卦号、女性观点号、社会评论号)
  • MVP阶段:纯规则引擎,快速上线

🎨 前端展示

  • 极简+新野兽主义设计:与个人官网hione.one保持一致的风格
  • 响应式布局:适配PC端和移动端
  • 实时筛选:按瓜级、风险、类目筛选
  • 交互体验:悬停效果、平滑过渡

📊 数据存储

  • SQLite数据库:轻量级,零运维
  • 全链路数据留存:支持后续复盘分析

🚀 部署方案

  • Docker + Docker Compose:一键部署,环境一致
  • API接口:RESTful设计,支持前端调用

技术架构

技术栈

  • 后端:Python FastAPI
  • 定时任务:APScheduler
  • 数据库:SQLite
  • Embedding:火山引擎Embedding API
  • 前端:HTML + Tailwind CSS + 原生JavaScript
  • 部署:Docker + Docker Compose

系统架构图

┌─────────────────────────────────────────────────────────────┐
│                          访客                                 │
└────────────────────────┬────────────────────────────────────┘
                         │
         ┌───────────────▼───────────────────┐
         │               Web UI               │
         └───────────────┬───────────────────┘
                         │
         ┌───────────────▼───────────────────┐
         │          FastAPI 后端服务           │
         └───────────────┬───────────────────┘
                         │
    ┌────────────┬───────┼───────┬────────────┐
    │            │       │       │            │
┌───▼───┐  ┌─────▼───┐ │ ┌─────▼─────┐  ┌──▼────┐
│热点抓取│  │AI评估引擎│ │ │ 数据存储  │  │ 定时  │
└───┬───┘  └─────┬───┘ │ └──────────┘  └──┬────┘
    │            │       │                 │
    │     ┌──────▼───────┘                 │
    │     │   SQLite                        │
    │     └─────────────────────────────────┘
    │
┌───▼───────────────────────────────────────────────────┐
│        外部API:TikHub / 微博 / 百度 / 知乎 / 火山引擎    │
└───────────────────────────────────────────────────────┘

项目目录结构

mcn-hot-trend/
├── app/                  # 应用主目录
│   ├── api/              # API接口
│   ├── crawler/          # 多平台热点抓取
│   ├── evaluator/        # AI评估引擎
│   ├── models/           # 数据库模型
│   ├── processor/        # 数据预处理(去重/排序)
│   ├── services/         # 外部服务调用
│   ├── static/           # 静态资源
│   ├── templates/        # HTML模板
│   ├── config.py         # 配置文件
│   ├── main.py           # FastAPI入口
│   └── scheduler.py      # 定时任务
├── config/               # 配置目录
│   ├── rules.json        # 评估规则配置
│   ├── sensitive-words.txt # 敏感词库
│   └── .env              # 环境配置(API Keys)
├── data/                 # 数据目录
│   └── hot_trends.db     # SQLite数据库
├── Dockerfile            # Docker构建文件
├── docker-compose.yml    # Docker Compose配置
├── requirements.txt      # Python依赖
├── package.json          # Node.js依赖(Tailwind CSS)
├── tailwind.config.js    # Tailwind CSS配置
└── README.md             # 项目说明

快速开始

1. 环境配置

  1. 克隆项目

  2. 配置环境变量

    • 复制 config/.env.exampleconfig/.env
    • 填写API Keys:
      • TIKHUB_API_KEY:TikHub API密钥(用于抖音热点)
      • VOLC_ACCESS_KEYVOLC_SECRET_KEY:火山引擎API密钥(用于Embedding)
  3. 安装依赖

    # 安装Python依赖
    pip install -r requirements.txt
    
    # 安装Node.js依赖(Tailwind CSS)
    npm install
  4. 构建前端

    npm run build

2. 本地运行

# 启动应用
python app/main.py

# 查看定时任务状态
python check_scheduler.py

访问:http://localhost:8000

3. Docker部署

# 构建并启动
docker-compose up -d

# 查看日志
docker-compose logs -f

访问:http://localhost:8000

API接口

GET /api/trends

获取热点列表,支持筛选排序

参数

  • level:按瓜级筛选(super, big, medium, small)
  • risk:按风险等级筛选(low, medium, high, forbidden)
  • category:按类目筛选(如:出轨, 离婚, 撕逼)
  • sort:排序方式(increase: 按涨幅, heat: 按热度)

响应

[
  {
    "id": 1,
    "keyword": "张某某 王某某 出轨",
    "sources": "抖音第1, 微博第1",
    "heat_current": 860000,
    "heat_1h_increase": 650000,
    "platforms": "抖音, 微博",
    "ai_level": "超级大瓜",
    "ai_category": "出轨",
    "ai_risk_level": "",
    "ai_recommend_account_type": "娱乐八卦号",
    "ai_suggestion": "优先做",
    "ai_confidence": 0.95,
    "created_at": "2026-04-14T10:00:00",
    "updated_at": "2026-04-14T10:00:00"
  }
]

GET /api/trends/{id}

获取单个热点详情

POST /api/refresh

手动触发一次抓取更新

技术特点

  1. 多源数据聚合:集成多个平台的热点数据,提供全面的热点覆盖
  2. AI语义分析:使用Embedding技术进行语义去重,提高数据质量
  3. 规则引擎评估:基于规则的AI评估,快速上线,易于调整
  4. 响应式前端:与个人官网风格一致,提供良好的用户体验
  5. 容器化部署:Docker一键部署,环境一致性好
  6. 定时任务管理:稳定的定时抓取机制,确保数据实时性

性能优化

  1. 异步处理:热点抓取任务异步执行,不阻塞Web服务
  2. 缓存策略:热点数据缓存,减少API调用
  3. 批量处理:批量写入数据库,提高性能
  4. 异常处理:完善的异常重试机制,提高系统稳定性
  5. 资源限制:合理设置API调用频率,避免限流

安全性

  1. 合规性:只抓取公开热点榜单,不碰隐私数据
  2. 敏感词过滤:本地敏感词库,过滤敏感内容
  3. API密钥管理:环境变量管理API密钥,避免硬编码
  4. 输入验证:严格的输入验证,防止恶意请求

未来规划

  1. 机器学习优化:基于历史数据训练分类器,提高AI评估准确率
  2. 更多平台支持:增加小红书、B站等平台的热点抓取
  3. 数据可视化:增加热点趋势图表,提供更直观的数据分析
  4. 用户系统:添加用户登录,支持个性化设置
  5. 推送服务:增加邮件/微信推送功能

开发指南

代码风格

  • Python:遵循PEP 8规范
  • JavaScript:遵循ES6+规范
  • CSS:使用Tailwind CSS,保持与个人官网风格一致

测试

# 测试规则引擎
python test_rule_engine.py

# 测试API接口
curl http://localhost:8000/api/trends

日志

  • 应用日志:app.log
  • 抓取日志:crawler.log

项目状态

✅ 核心功能开发完成 ✅ 前端展示实现 ✅ Docker部署配置 ✅ API接口实现 ✅ 定时任务配置

联系方式

  • 项目地址:/Users/ericgao/Desktop/MCN-AI数据报表项目/products/mcn-hot-trend
  • 最后更新:2026-04-14
  • 版本:v1.0.0

:本项目为个人展示项目,用于展示多源信息聚合和AI分析能力。

Releases

Packages

Contributors

Languages