自动新闻聚合与早报生成系统 - 每日为投资者生成精选新闻早报并推送至飞书群。
. ├── main.py # 入口文件 - 定时任务调度 ├── pyproject.toml # 项目依赖配置 ├── config.toml # RSS 订阅源配置 ├── docker-compose.yml # Docker 服务编排 ├── Dockerfile # 应用镜像构建 ├── .env # 环境变量(需手动创建) └── src/news/ # 源码目录 ├── db.py # 数据库操作 ├── get_news.py # 新闻获取与内容提取 ├── summarize.py # AI 摘要生成 ├── generate_news.py # 早报生成 └── send.py # 飞书消息推送
创建 .env 文件:
# PostgreSQL 数据库配置 PSQL_HOST=db PSQL_PORT=5432 PSQL_DATABASE=news_db PSQL_USER=postgres PSQL_PASSWORD=your_password # 阿里云 DashScope API(通义千问) DASHSCOPE_API_KEY=your_api_key DASHSCOPE_API_BASE=https://dashscope.aliyuncs.com/compatible-mode/v1 # 飞书应用配置 APP_ID=cli_xxxxxxxx APP_SECRET=xxxxxxxx GROUP_CHAT_ID=oc_xxxxxxxx
docker compose up -d
服务将自动执行:
docker compose logs -f news-app
# 安装依赖
uv pip install -e .
# 运行调度器
uv run python main.py
# 手动执行单次任务
uv run python -c "from news.generate_news import main; main()"
编辑 config.toml 添加或修改 RSS 订阅源:
rss_urls = [
"https://www.cbsnews.com/latest/rss/main",
"https://www.cbsnews.com/latest/rss/technology",
"https://www.chinanews.com.cn/rss/finance.xml",
# 添加更多 RSS 源...
]