基于微博数据的自动驾驶行业智能分析报告系统,每日自动抓取相关微博内容,使用Google AI进行智能分析和总结,生成专业的行业日报。
- 智能抓取: 自动抓取指定微博用户的相关内容,支持完整内容获取
- AI分析: 使用Google Gemini API进行内容分析、话题归类和智能总结
- 定时任务: 支持每日/每周定时抓取,可自定义抓取时间
- 内容过滤: 智能过滤相关性内容,按热度排序,合并相同话题
- 报告生成: 生成新闻+分析风格的专业日报
- 公开页面: Pinterest风格的信息流展示,支持搜索和分页
- 管理后台: 完整的配置管理、手动抓取、报告管理功能
- 响应式设计: 支持桌面和移动端访问
- 轻量化存储: 使用JSON文件存储,无需数据库
- Docker部署: 完整的容器化支持
- 错误重试: 最多3次重试机制
- 数据清理: 自动清理过期数据(默认3个月)
- Node.js 18+
- Docker & Docker Compose (推荐)
- Google AI API密钥
- 微博Cookie (用于数据抓取)
- 克隆项目
git clone <repository-url>
cd adas-news- 配置环境变量
# 可选:设置Google AI API密钥
export GOOGLE_API_KEY=your_api_key_here- 启动服务
docker-compose up -d- 访问应用
- 公开页面: http://localhost:3000
- 管理后台: http://localhost:3000/admin
- 安装依赖
npm install- 启动服务
npm start首次启动后,访问管理后台进行配置:
- 微博用户UID: 默认已包含相关用户,可自行添加/删除
- 抓取时间: 设置每日抓取时间(默认09:00)
- 微博Cookie: 粘贴有效的微博Cookie
- Google AI API: 输入Google AI API密钥
- 打开浏览器,访问 m.weibo.cn
- 登录微博账号
- 打开开发者工具 (F12)
- 在Network标签页中刷新页面
- 找到任意请求,复制Cookie头部信息
- 访问 Google AI Studio
- 创建新的API密钥
- 复制密钥到管理后台配置
如果你需要架设自己的API中转服务,可以使用 openai-gemini 项目:
一键部署到Netlify:
- 点击项目页面的 "Deploy to Netlify" 按钮
- 配置环境变量
GOOGLE_API_KEY为你的Google AI密钥 - 部署完成后,将API端点修改为你的Netlify域名
使用方式:
- 将系统配置中的API端点从默认地址改为你的中转服务地址
- 支持OpenAI兼容的API格式,便于集成其他工具
系统会根据配置的时间自动执行抓取任务:
- 抓取指定用户24小时内的微博
- 过滤相关性内容(自动驾驶、汽车、AI相关)
- 按热度排序,合并相同话题
- 调用AI生成专业日报
- 保存结果到本地文件
在管理后台可以:
- 立即抓取: 手动触发抓取任务
- 查看状态: 监控定时任务运行状态
- 管理报告: 查看、删除历史报告
- 测试配置: 验证Cookie和API密钥有效性
公开页面提供:
- 信息流浏览: 卡片式展示所有日报
- 详情查看: 点击卡片查看完整报告内容
- 搜索功能: 按关键词搜索报告内容
- 排序筛选: 按日期、热度、话题数排序
# 服务端口
PORT=3000
# Google AI API密钥
GOOGLE_API_KEY=your_api_key
# 运行环境
NODE_ENV=production
# 时区设置
TZ=Asia/Shanghaidata/
├── config.json # 系统配置
├── reports/ # 日报数据
│ ├── 2024-01-15.json
│ ├── 2024-01-16.json
│ └── weekly-*.json # 周报数据
└── cache/ # 临时缓存
{
"uids": ["5124470749", "1787199825", ...],
"crawlTime": "09:00",
"frequency": "daily",
"cookie": "your_weibo_cookie",
"googleApiKey": "your_google_api_key",
"retryCount": 3,
"dataRetentionDays": 90
}- 请确保遵守微博平台的使用条款
- 仅用于学习和研究目的
- 不要过度频繁地请求数据
- 微博可能有反爬虫机制,Cookie可能需要定期更新
- Google AI API有调用限制和费用
- 系统依赖网络连接,请确保网络稳定
- Cookie和API密钥为敏感信息,请妥善保管
- 建议定期备份重要数据
- 生产环境请使用HTTPS
-
抓取失败
- 检查Cookie是否有效
- 确认网络连接正常
- 查看错误日志
-
AI分析失败
- 验证Google AI API密钥
- 检查API调用额度
- 确认网络可访问Google服务
-
定时任务不执行
- 检查系统时间设置
- 确认服务正常运行
- 查看任务状态
# Docker环境
docker logs adas-news-app
# 本地环境
npm start欢迎提交Issue和Pull Request来改进项目!
# 克隆项目
git clone <repository-url>
cd adas-news
# 安装依赖
npm install
# 启动开发服务器
npm run dev- 使用ES6+语法
- 遵循现有代码风格
- 添加适当的注释
- 确保功能完整测试
MIT License - 详见 LICENSE 文件
如有问题或建议,请:
- 查看本文档的故障排除部分
- 搜索已有的Issues
- 创建新的Issue描述问题
- 提供详细的错误信息和环境描述
免责声明: 本项目仅供学习和研究使用,请遵守相关法律法规和平台使用条款。