一个基于Node.js开发的全天候互联网舆情监测系统,支持关键词监控和指定网址监控,并提供可视化大屏展示。
- 🎯 关键词监控: 根据用户提供的关键词自动搜索相关网页
- 📍 指定网址监控: 监控特定网站内容变化
- 📈 舆情分析: 情感分析、热度计算、趋势分析
- 🖥️ 大屏展示: 实时可视化展示舆情数据
- ⏰ 全天候监测: 支持定时任务和实时监控
- 📡 RESTful API: 提供完整API接口
- 🔔 预警系统: 重要舆情自动告警
- 🔄 实时更新: WebSocket实时推送数据更新
- 📊 数据可视化: 情绪分析图表、热度趋势、关键词分布
- 🎨 美观界面: 现代化设计,响应式布局
npm installnpm start或者直接运行:
node server_clean.jsnpm run devmonitor/
├── src/
│ ├── crawler.js # 爬虫核心(增强版)
│ ├── monitor.js # 监控调度器
│ ├── analyzer.js # 文本分析器
│ ├── database.js # 数据存储
├── public/
│ ├── css/
│ │ └── dashboard.css # 大屏样式
│ └── js/
│ └── chart.js # 图表库
├── data/ # 存储监测数据
├── server_clean.js # 主服务入口(含WebSocket实时通信)
└── package.json
- 关键词匹配与统计
- 网页内容抓取与解析
- 链接提取功能
- 错误处理与重试机制
- 任务管理系统(添加、删除、查询)
- 定时任务调度(支持实时、小时、每日等频率)
- 立即执行功能
- 情感分析(正面/负面/中性)
- 热度计算算法
- 关键词提取与统计
- 趋势分析
- 舆情数据存储
- 监控任务存储
- 按关键词/时间范围查询
- 大屏实时展示
- 实时统计数据
- 数据可视化图表
- 任务管理界面
- WebSocket实时通信
POST /api/monitor
Content-Type: application/json
{
"type": "keyword", // 或 "url"
"target": "关键词或网址",
"frequency": "hourly" // hourly, daily, real-time
}GET /api/statsGET /api/crawl?url=URL
GET /api/crawl?url=URL&keyword=KEYWORDPOST /api/crawl
Content-Type: application/json
{
"urls": ["url1", "url2", "..."],
"keywords": ["keyword1", "keyword2"]
}GET /api/keywordsGET /api/historyGET /api/visualizeGET /api/links?url=URL/ws
- 实时统计面板: 显示活跃任务数、数据条目、情绪比例、热度指数
- 监控任务管理: 添加关键词监控或网址监控任务
- 热门关键词展示: 实时显示最热门的关键词
- 数据可视化: 情绪分析图表、热度趋势图表、关键词分布饼图
- 历史数据表格: 显示监测到的详细历史数据
- 手动测试区域: 可以手动测试抓取功能
- 实时状态指示: LIVE标识显示实时更新状态
- 桌面通知: 任务执行完成的通知提醒
- 请遵守目标网站的 robots.txt 规则
- 合理设置请求间隔,避免对目标服务器造成压力
- 仅用于合法合规的舆情监测
- 遵守相关法律法规
- 请勿用于任何非法用途
欢迎提交 Issue 和 Pull Request 来帮助改进项目。
MIT License