本地部署 (uv)
本指南介绍如何在你自己的电脑上直接运行 TrendRadar,无需 Docker。 我们使用 uv 作为包管理工具,它会自动安装 Python 和所有依赖,无需手动配置环境。
当前任务 · 本地运行
更换部署方式在当前电脑上启动 TrendRadar,并用首次运行验证配置是否正确。
适用场景
本地部署适合开发调试、快速体验、或不方便安装 Docker 的环境。如果你有长期运行的服务器,建议使用 Docker 方式部署。
什么是 uv
uv 是一款现代化的 Python 包管理器,由 Astral 团队开发(同为 ruff 的作者)。 它的最大特点是:
| 无需预装 Python | uv 会自动下载并管理 Python 版本,你不需要提前安装 Python |
| 极速安装 | 使用 Rust 编写,依赖解析和安装速度比 pip 快 10-100 倍 |
| 一键环境管理 | 自动创建虚拟环境,自动解析并安装所有依赖 |
| 跨平台支持 | 支持 Windows、macOS、Linux 三大操作系统 |
简单来说,你只需要安装 uv 这一个工具,其余的一切它都会帮你处理好。
Python 版本要求
TrendRadar 需要 Python 3.12 或更高版本。你无需手动安装 Python,uv 会自动下载合适的 Python 版本。
部署步骤
安装 uv
一条命令安装 uv 包管理器
克隆项目
从 GitHub 获取项目代码
安装依赖
uv 自动安装 Python 和所有依赖
编辑配置
设置推送渠道和关键词
启动程序
运行 TrendRadar
第一步:安装 uv
根据你的操作系统,选择对应的安装命令。打开终端(Windows 用户打开 PowerShell), 复制并执行以下命令:
macOS / Linux
Windows
在终端中执行:
curl -LsSf https://astral.sh/uv/install.sh | sh安装完成后,可能需要重新打开终端窗口使 uv 命令生效。
安装完成后,验证 uv 是否安装成功:
uv --version如果看到版本号输出(如
uv 0.7.x),说明安装成功。第二步:克隆项目
从 GitHub 获取 TrendRadar 的完整代码:
git clone https://github.com/sansan0/TrendRadar.git
cd TrendRadar没有安装 Git?
你也可以直接在 GitHub 页面点击 Code > Download ZIP 下载压缩包, 解压后进入 TrendRadar 目录即可。
第三步:安装依赖
在项目根目录下执行以下命令,uv 会自动下载合适版本的 Python 并安装所有依赖包:
uv sync这个过程通常只需要几十秒。完成后,项目所需的所有环境就准备好了。
首次运行说明
首次执行 uv sync 时,uv 会自动下载 Python 解释器(约 30-50 MB)和项目依赖。后续再次执行时会直接使用缓存,速度更快。
第四步:编辑配置
启动前,你需要编辑两个关键配置文件来设置推送渠道和关注的新闻话题:
必须config/config.yaml -- 核心配置文件
在这个文件中设置你的推送渠道(飞书、微信、邮件等)、抓取的新闻平台、 AI 功能开关等。用任意文本编辑器打开即可编辑。
必须config/frequency_words.txt -- 关键词配置
在这个文件中定义你关注的新闻话题和关键词。每行一个关键词或关键词组, 支持分组、正则表达式、排除规则等高级语法。
第五步:启动程序
配置完成后,执行以下命令启动 TrendRadar:
uv run python -m trendradar这条命令会执行一次抓取、分析和推送,然后退出;
timeline.yaml 决定这次运行处于哪个时间段、应执行哪些动作,但不会让进程常驻循环。 需要定期运行时,请继续完成下方的操作系统定时任务配置。常用命令
TrendRadar 提供了几个实用的 CLI 命令,帮助你诊断配置和测试推送:
| 命令 | 说明 |
|---|---|
uv run python -m trendradar --doctor | 运行环境体检,检查 Python 版本、配置文件、通知渠道、存储后端等是否正常 |
uv run python -m trendradar --test-notification | 发送一条测试消息到所有已配置的推送渠道,验证推送是否配通 |
uv run python -m trendradar --show-schedule | 显示当前调度状态,包括时间段、推送/分析开关等 |
诊断时无需先跑一遍新闻抓取
以上三个命令执行完即退出,不会触发新闻抓取。
--doctor 会把体检结果写入 output/meta/doctor_report.json;它会检查 AI 模型、API Key 和模型格式,但不会向模型发送真实请求。--test-notification 则会向所有有效渠道实际发送一条测试消息。版本检查会在正常运行时自动完成, 当前没有独立的 --version-check 参数。定时自动运行
如果你希望 TrendRadar 在本地定期自动执行(类似 Docker 的 cron 模式),可以使用操作系统的定时任务功能。
Linux / macOS
Windows
使用
crontab 配置定时任务。执行 crontab -e 打开编辑器,添加一行:*/30 * * * * cd /path/to/TrendRadar && uv run python -m trendradar以上示例为每 30 分钟执行一次。请将
/path/to/TrendRadar 替换为你的实际项目路径。辅助安装脚本(不会启动爬虫)
项目提供的 setup 脚本用于准备依赖和输出 MCP 客户端配置信息,不会执行
python -m trendradar。准备完成后仍需使用上方命令手动运行。Windows
macOS / Linux
在项目根目录找到
setup-windows.bat 文件,双击运行即可。# 或者在命令行中执行:
setup-windows.bat此脚本要求系统已经安装可用的 Python;完成依赖准备后不会启动 TrendRadar。
不要把安装完成当成运行成功
脚本结束只代表依赖准备完成。请继续运行 uv run python -m trendradar --doctor、--test-notification,再执行 uv run python -m trendradar 完成一次真实抓取。
常见问题
| 问题 | 解决方案 |
|---|---|
| 执行 uv sync 报网络错误 | 可能是网络不稳定。请检查网络连接,或尝试配置代理后重试。如果在中国大陆,可以考虑使用镜像源。 |
| Windows 上提示"无法识别 uv 命令" | 安装 uv 后需要重新打开 PowerShell 窗口。如果仍然报错,检查 uv 是否已添加到系统 PATH 环境变量中。 |
| macOS 上提示权限不足 | 在安装脚本前加上 sudo 前缀重试,或检查安装目录的权限设置。 |
| 程序启动后没有推送消息 | 请检查 config.yaml 中的推送渠道配置是否正确,以及 frequency_words.txt 中是否添加了关键词。 |
| 如何停止程序 | 在终端中按 Ctrl+C 即可停止运行。 |
如遇到其他问题,请参考「常见问题」页面,或在 GitHub Issues 中反馈。