本文逐步说明如何在本地运行一个用于自动更新圆圈网(Circler)的Python项目。内容包括环境准备、虚拟环境激活、依赖安装、.env配置,以及各条运行命令的使用方法和参数,还介绍了Windows定时任务设置,方便实现每日自动发布资讯。

核心问题

如何在本机运行自动更新圆圈网项目?


环境准备与首次配置

在 Windows 环境下使用 PowerShell,进入项目目录后可以直接激活已有的虚拟环境。

1. 激活虚拟环境

cd d:\python_project\自动更新圆圈网
.\.venv\Scripts\activate

如果虚拟环境尚未创建或依赖缺失,需要先执行以下步骤:

cd d:\python_project\自动更新圆圈网
python -m venv .venv
.\.venv\Scripts\activate
pip install -r requirements.txt

2. 配置环境变量

项目依赖 .env 文件存放敏感信息。将模板文件复制一份并根据需要编辑:

copy .env.example .env

用记事本或 VS Code 打开 .env,至少需要填写以下关键配置:

配置项 用途
CIRCLER_API_TOKEN 圆圈网后台 API 令牌
CIRCLER_*_PATH 上传/发资讯/发文章接口路径(参考后台文档)
LLM_API_KEY DeepSeek / 通义等写作 API 的密钥
LLM_BASE_URL、LLM_MODEL 模型地址与名称

注意:撰写文章或生成摘要时必须配置 LLM 相关参数。如果仅测试 API 连通性,可以暂时不填 LLM_API_KEY。

常用运行命令

每次新开终端都需要先激活虚拟环境,然后在项目根目录下执行命令。

测试 API 连接

建议第一步执行干跑测试,检查配置是否正确,不会真正发布内容:

python -m src.cli test-api --dry-run

预览结果会保存在 preview\news\ 目录。

每日自动资讯(流水线 A)

先试跑(仅生成本地预览):

python -m src.cli daily-news --dry-run --limit 2

确认无误后正式发布:

python -m src.cli daily-news

每天默认最多发布 5 条,可以在 .env 中通过 DAILY_NEWS_LIMIT 调整。

按标题撰写长文(流水线 B)

试跑示例:

python -m src.cli write-article --title "ComfyUI 常用快捷键大全" --category 学习笔记 --dry-run

正式发布示例:

python -m src.cli write-article --title "Flux 模型在 ComfyUI 中的使用入门" --category 学习笔记

该命令支持的可选参数:

  • --keywords "Flux,高清":指定写作关键词;
  • --skip-images:跳过配图生成,仅测试文字流程;
  • --dry-run:不调用发布 API,输出预览到 preview\ 目录。

查看帮助

python -m src.cli --help
python -m src.cli write-article --help

设置每日定时任务

如果希望资讯每天自动发布,可以使用 Windows 计划任务。

以管理员身份运行 PowerShell:

cd d:\python_project\自动更新圆圈网
.\scripts\setup_scheduled_task.ps1

该脚本会创建一个在每天 08:00 执行的 daily-news 任务。

也可以手动在“任务计划程序”中创建,参数如下:

  • 程序:d:\python_project\自动更新圆圈网\.venv\Scripts\python.exe
  • 参数:-m src.cli daily-news
  • 起始于:d:\python_project\自动更新圆圈网

运行结果与文件说明

内容 位置
运行日志 logs\updater.log
dry-run 预览 preview\
已处理资讯去重数据库 data\processed.db
生成的配图 data\images\

常见问题

  1. 提示未配置 LLM_API_KEY
    在 .env 中填入正确的 LLM_API_KEY;如果只是执行 daily-news --dry-run 会使用简易摘要,但正式发布或写文章必须配置。

  2. API 返回 404 或 401
    检查 .env 中的 CIRCLER_BASE_URL、*_PATH、CIRCLER_API_TOKEN 是否与后台提供的文档一致。

  3. 每次运行都需要激活环境
    每打开一个新的终端窗口,都要先 cd 到项目目录,然后执行 .\\.venv\\Scripts\\activate,再输入对应的 python -m src.cli ... 命令。