Skip to content

hkgood/ADASNews

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

自动驾驶AI日报系统 (ADAS News)

基于微博数据的自动驾驶行业智能分析报告系统,每日自动抓取相关微博内容,使用Google AI进行智能分析和总结,生成专业的行业日报。

🚀 功能特性

核心功能

  • 智能抓取: 自动抓取指定微博用户的相关内容,支持完整内容获取
  • AI分析: 使用Google Gemini API进行内容分析、话题归类和智能总结
  • 定时任务: 支持每日/每周定时抓取,可自定义抓取时间
  • 内容过滤: 智能过滤相关性内容,按热度排序,合并相同话题
  • 报告生成: 生成新闻+分析风格的专业日报

用户界面

  • 公开页面: Pinterest风格的信息流展示,支持搜索和分页
  • 管理后台: 完整的配置管理、手动抓取、报告管理功能
  • 响应式设计: 支持桌面和移动端访问

技术特性

  • 轻量化存储: 使用JSON文件存储,无需数据库
  • Docker部署: 完整的容器化支持
  • 错误重试: 最多3次重试机制
  • 数据清理: 自动清理过期数据(默认3个月)

📋 系统要求

  • Node.js 18+
  • Docker & Docker Compose (推荐)
  • Google AI API密钥
  • 微博Cookie (用于数据抓取)

🛠️ 快速开始

方式一:Docker部署 (推荐)

  1. 克隆项目
git clone <repository-url>
cd adas-news
  1. 配置环境变量
# 可选:设置Google AI API密钥
export GOOGLE_API_KEY=your_api_key_here
  1. 启动服务
docker-compose up -d
  1. 访问应用

方式二:本地开发

  1. 安装依赖
npm install
  1. 启动服务
npm start

⚙️ 配置说明

初始配置

首次启动后,访问管理后台进行配置:

  1. 微博用户UID: 默认已包含相关用户,可自行添加/删除
  2. 抓取时间: 设置每日抓取时间(默认09:00)
  3. 微博Cookie: 粘贴有效的微博Cookie
  4. Google AI API: 输入Google AI API密钥

获取微博Cookie

  1. 打开浏览器,访问 m.weibo.cn
  2. 登录微博账号
  3. 打开开发者工具 (F12)
  4. 在Network标签页中刷新页面
  5. 找到任意请求,复制Cookie头部信息

获取Google AI API密钥

  1. 访问 Google AI Studio
  2. 创建新的API密钥
  3. 复制密钥到管理后台配置

API中转服务 (可选)

如果你需要架设自己的API中转服务,可以使用 openai-gemini 项目:

一键部署到Netlify:

  1. 点击项目页面的 "Deploy to Netlify" 按钮
  2. 配置环境变量 GOOGLE_API_KEY 为你的Google AI密钥
  3. 部署完成后,将API端点修改为你的Netlify域名

使用方式:

  • 将系统配置中的API端点从默认地址改为你的中转服务地址
  • 支持OpenAI兼容的API格式,便于集成其他工具

📊 使用说明

自动抓取

系统会根据配置的时间自动执行抓取任务:

  1. 抓取指定用户24小时内的微博
  2. 过滤相关性内容(自动驾驶、汽车、AI相关)
  3. 按热度排序,合并相同话题
  4. 调用AI生成专业日报
  5. 保存结果到本地文件

手动操作

在管理后台可以:

  • 立即抓取: 手动触发抓取任务
  • 查看状态: 监控定时任务运行状态
  • 管理报告: 查看、删除历史报告
  • 测试配置: 验证Cookie和API密钥有效性

报告查看

公开页面提供:

  • 信息流浏览: 卡片式展示所有日报
  • 详情查看: 点击卡片查看完整报告内容
  • 搜索功能: 按关键词搜索报告内容
  • 排序筛选: 按日期、热度、话题数排序

🔧 高级配置

环境变量

# 服务端口
PORT=3000

# Google AI API密钥
GOOGLE_API_KEY=your_api_key

# 运行环境
NODE_ENV=production

# 时区设置
TZ=Asia/Shanghai

数据目录结构

data/
├── 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

🔍 故障排除

常见问题

  1. 抓取失败

    • 检查Cookie是否有效
    • 确认网络连接正常
    • 查看错误日志
  2. AI分析失败

    • 验证Google AI API密钥
    • 检查API调用额度
    • 确认网络可访问Google服务
  3. 定时任务不执行

    • 检查系统时间设置
    • 确认服务正常运行
    • 查看任务状态

日志查看

# 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 文件

📞 支持

如有问题或建议,请:

  1. 查看本文档的故障排除部分
  2. 搜索已有的Issues
  3. 创建新的Issue描述问题
  4. 提供详细的错误信息和环境描述

免责声明: 本项目仅供学习和研究使用,请遵守相关法律法规和平台使用条款。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors