WordPress采集ai改写插件

最后更新:2025-12-13

插件简介

插件名称:wordpress AI 采集改写插件(Aurora-Collect-rewrite)

主要功能:定时或手动,从指定平台(当前已适配知乎、今日头条等)采集文章内容,调用 AI 对标题和正文进行深度改写后,自动发布到 WordPress 站点,可选本地化图片、追加来源声明、自动生成标签等。

适用角色:站长、运营、内容编辑,希望用稳定的自动化采集+改写来补充日常内容生产。

核心优势

  • 一站式流程:采集 → 抽取正文 → AI 改写 → 图片本地化 → 自动发布,全流程自动化。
  • 可视化配置:后台界面完成所有设置,无需改代码。
  • 多平台支持:内置知乎、今日头条等站点适配规则,支持列表页/话题/热榜抽取。
  • AI 深度改写:可分别为标题/正文配置提示词,控制改写风格和长度。
  • 计划任务调度:基于 WP-Cron 按设定的时间间隔自动执行,支持手动“立即执行一次”。
  • 完整日志链路:抓取、改写、发布、图片下载全过程都有日志记录,方便排错。

安装与激活

安装插件

方式一:后台上传 ZIP 包

  1. 在 WordPress 后台进入 “插件 > 安装插件”
  2. 点击页面顶部 “上传插件”,选择本插件的 ZIP 安装包。
  3. 上传完成后点击 “现在安装”,然后点击 “启用插件”

方式二:文件管理器 / FTP 上传

  1. 将插件目录 collect-rewrite 上传到服务器路径 wp-content/plugins/
  2. 进入后台 “插件 > 已安装插件”,找到 “极光 AI 采集改写(Collect-rewrite)” 并启用。

首次激活会做什么

  • 自动注册计划任务(Cron),默认每约 60 分钟执行一次采集/改写任务。
  • 自动创建 logs/ 目录,用于保存运行日志(如 logs/collect-rewrite.log)。
  • 为后续在线更新预留配置(如 CR_UPDATE_JSON_URL)。

后台入口与整体结构

后台菜单入口

  • 在后台左侧菜单中,一般会出现 “极光 AI 采集改写 / Collect-rewrite” 菜单。
  • “设置 > Collect-rewrite 设置” 中可进入核心配置页面(具体以插件版本为准)。

重要文件和目录(仅做了解)

  • collect-rewrite.php:插件主入口,负责加载核心类、注册计划任务、对接在线更新。
  • includes/:核心逻辑(采集、AI 调用、Cron、队列管理、日志工具等)。
  • templates/:后台设置和工具页面的模板。
  • logs/collect-rewrite.log:插件运行时生成的日志文件。
  • docs/HELP_USER.html:开发者提供的网页版使用说明。

授权与未授权模式

未授权限制

为防止资源被滥用和恶意调用,未授权状态下插件会自动启用安全模式:

  • 提交数量限制:采集 URL 或 AI 写作关键词,每次最多 5 条。
  • 导入限制:不允许从 .txt 等文件导入大量链接。
  • 间隔限制:任务执行间隔固定为约 1 分钟,无法自定义更低/更高频率。
  • 工具箱写回限制:工具箱页面禁止“一键写回”功能(只能查看抽取的链接)。
  • 24 小时限频:采集入队和 AI 写作入队均有独立的 24 小时限频保护。
  • API 服务器地址不可编辑:未授权时通常无法修改 AI 接口的服务器地址。

授权后的变化

  • 解除数量和频率限制,支持更多链接和关键词。
  • 开放工具箱的写回/一键入队功能。
  • 可自由配置 API 服务器地址、调用频率和间隔策略。
  • 更适合长期、生产环境的大规模内容采集与改写。

授权方式和安全性说明

  • 授权通常跟站点根域名或服务器 IP 绑定,请按实际授权说明操作。
  • 卡密仅用于激活,不会明文保存在公共页面。
  • 请勿在文章或截图中暴露授权信息、API Key 或 Cookie。

语言与界面

多语言支持

  • 插件根据 WordPress 站点语言自动切换界面语言。
  • 当前支持:简体中文(默认)、英文(en_US)、繁体中文(zh_TW)。

切换语言的方法

  1. 进入后台 “设置 > 常规 > 站点语言”
  2. 选择需要的语言后保存,插件界面会自动切换对应的翻译。

如果部分文字没有翻译

  • 可能是语言包未更新或新版本新增字段。
  • 可以让管理员使用翻译工具编辑 .po 文件,并生成对应的 .mo 文件放在 languages/ 目录下。

AI 接口(API 设置)

AI 配置入口

  • 在插件设置页面中,一般有 “API 设置 / AI 设置” 区块。

必填项说明

  • API 服务地址(Endpoint):例如 https://sk.slapi.cn/v1/chat/completions 等 OpenAI 兼容接口。
  • 模型(Model):gpt-4o-mini、其它兼容模型名称。
  • API Key:各类 AI 服务平台提供的密钥,用于计费与权限控制。
  • 超时时间与重试:可视具体 UI 设置,一般建议超时 ≥ 10 秒,重试次数适中。
  • 目标语言:建议设置为 zh-CN,保证改写结果是简体中文。
  • 内容编码:建议使用 utf8,避免中文乱码问题。
  • 提示词(标题/正文):可自定义写作风格,如“用简体中文生成更有吸引力的标题”“扩写并保持原意”等。

安全建议

  • 请将 API Key 控制在服务器或后台配置中,勿暴露到前端页面。
  • 如多人管理站点,可限制仅管理员角色可以访问插件设置页面。
  • 根据使用量控制模型等级,平衡成本与效果。

Cookie / UA 配置(Profiles)

为什么需要 Cookie / UA

  • 部分目标站点(如知乎、今日头条)对未登录用户或频繁访问会有风控。
  • 通过配置有效的 Cookie 和 User-Agent,可以显著提高抓取成功率和稳定性。

获取 Cookie 的步骤(以知乎为例)

  1. 在桌面浏览器(推荐 Chrome)中登录知乎账号。
  2. 按 F12 打开开发者工具,切换到 Network 面板。
  3. 刷新页面,点击任意一个请求。
  4. Request Headers 中找到 Cookie 字段,复制完整内容。
  5. 同时复制 User-Agent 字段值(浏览器标识)。

在插件中配置 Profiles

  • 打开插件中的 “Profiles / 来源配置 / 工具箱” 页面。
  • 为知乎创建一个 Profile,如“知乎内容”。
  • 将刚才复制的 Cookie、User-Agent(以及必要时的 X-UDID)填入对应的输入框。
  • 保存后,可使用“测试抓取”按钮验证是否能正常访问知乎内容页。

Cookie 注意事项

  • Cookie 有有效期,过期后会返回 403 或需要登录提示,需要重新从浏览器复制新的 Cookie。
  • 避免高频访问导致账号被风控,必要时提高采集间隔或准备备用账号。
  • 不同来源(知乎、头条)建议使用不同的 Profile,方便单独维护和替换。

采集目标与任务入队

采集目标页面(URL 列表)

基本使用步骤

  1. 在插件菜单中进入 “采集目标 / 采集配置” 页面。
  2. 在“采集 URL 列表”文本框中,每行粘贴一个文章详情链接(如知乎回答页、头条文章页)。
  3. 系统会根据 URL 自动去重:相同链接不会重复入队。
  4. 设置发布分类、文章作者、执行间隔、去重策略等参数。
  5. 点击“入队”或“提交至任务列表”,生成待执行任务。

关键参数说明

  • 来源 Site:选择对应站点(如“知乎”、“今日头条”)。
  • 来源 Profile:选择前面配置好的 Cookie/UA Profile。
  • 分类 Category:选择采集改写后的文章要发布到哪个栏目,可多选。
  • 作者 Author:选择文章在 WordPress 中显示的作者。
  • 执行间隔:
    • 可以选择固定计划(如每小时、每天),也可以自定义分钟数。
    • 测试环境可设置为 1 分钟;正式环境建议 ≥ 30 分钟,减少对目标站点的压力。
  • 去重策略:根据 URL 或指纹去重,防止同一内容被重复采集和发布。
  • 图片本地化:开启后会下载正文中的远程图片保存到媒体库,且可设置首图为特色图片。
  • 追加来源/尾注:在文章末尾自动添加原文链接和版权声明。
  • AI 标签生成:改写完成后调用 AI,根据正文生成若干标签(数量可配置)。

AI 改写流程概览

  • 抓取目标链接 HTML。
  • 根据规则提取正文、标题、图片(不同站点有不同抽取逻辑,知乎还有多级兜底)。
  • 调用 AI 按提示词改写标题和正文。
  • 按段或分块处理长文,保证语义通顺、结构合理。
  • 将图片重新插入改写后的正文,必要时进行本地化。
  • 最终创建并发布 WordPress 文章(或设为草稿,视设置而定)。

任务列表(队列管理)

查看任务状态

  • 在“任务列表 / 队列管理”页面,可以看到所有已入队任务。
  • 常见状态:
  • pending:等待执行。
  • running:正在执行。
  • completed:已完成。
  • deleted / failed:已删除或执行失败。

常用操作

  • 立即执行一次:手动点击后,插件会立刻尝试执行选中的任务,常用于测试或调试。
  • 批量删除:选中多条任务,一键删除无效或重复任务。
  • 分组调度:同一分组(如同一分类或同一来源)会按设定最小间隔依次执行,避免瞬时并发过高。

日志联动

  • 每一条任务执行过程,都会在 logs/collect-rewrite.log 中记录对应的抓取、抽取、AI 调用和发布信息。
  • 关键日志示例:
  • crawl.fetch.start/ok:开始抓取/抓取成功。
  • crawl.extract.*:正文抽取相关日志。
  • ai.chat.request/success:AI 请求发送与成功返回。
  • worker.rewrite.title_ok/body_ok:标题/正文改写成功。
  • post.publish.ok:文章发布成功。
  • media.localize.*:图片本地化处理相关日志。
  • worker.tags.done:AI 标签生成完成。

工具箱功能

批量 URL 抓取与写回

适用于从话题广场、搜索结果页或排行榜中,一次性抽取大量文章链接并写回“采集目标”。

以知乎为例的操作步骤

  1. 在插件菜单中打开 “工具箱 / URL 抽取” 页面。
  2. 选择来源 Profile(如“知乎内容”),确保已配置有效的 Cookie/UA。
  3. 在“入口链接”处粘贴知乎话题页、搜索结果页或热榜列表 URL。
  4. 设置分页范围、每页最大抓取数量等参数。
  5. 点击“抓取 URL”,等待系统分析并列出候选文章链接。
  6. 勾选需要的链接,选择要投递的分类、作者、执行间隔、去重策略等。
  7. 点击“一键写回/入队”,即可将选定链接写入“采集目标”并生成任务。

今日头条与其它站点

  • 今日头条:可针对特定频道或列表页抽取文章链接。
  • 其它站点:如果结构规则相对固定,也可以通过内置解析逻辑抽取链接(具体以插件版本为准)。

授权对工具箱的影响

  • 未授权:通常只能使用“抽取”功能,不能批量写回到采集目标。
  • 授权:全面开放 URL 抽取和写回功能,更适合大量任务导入。

AI 写作(不依赖外部链接)

功能说明

除了“采集+改写”模式外,插件还提供纯 AI 写作模式:只输入关键词列表,就能自动生成文章。

使用步骤

  1. 打开插件中的 “AI 写作 / 关键词写作” 页面。
  2. 在“关键词列表”文本框中,每行输入一个关键词或短语。
  3. 选择目标分类、文章状态(发布/草稿)、图片保存目录、标签数量等参数。
  4. 点击“入队 AI 写作”,生成写作任务。
  5. 在“任务列表”中查看执行情况。

计划任务(WP-Cron)与执行频率

内部 Cron 机制

  • 插件激活时注册一个 cr_schedule_hook 计划任务,默认约每 60 分钟触发。
  • 如果你在设置中将间隔修改为 1 分钟(用于测试),插件会自动重排程,并在日志中记录:
  • cron.schedule.registercron.ensure.adjustcron.reschedule.done 等。

在 Windows/IIS 环境下的注意事项

  • WP-Cron 的触发依赖“有人访问站点页面”。
  • 如果站点访问量较低,可能导致计划任务长时间不执行。
  • 可通过操作系统自带的计划任务,定期访问站点某个 URL 或 wp-cron.php 来主动触发。

外部计划任务(进阶配置)

  • 当常量 DISABLE_WP_CRON 被设为 true 时,WordPress 不会自动触发 Cron。
  • 此时需要让服务器每分钟访问一次类似 /wp-cron.php?doing_wp_cron=1 的地址。
  • 请根据主机控制面板的“计划任务/定时任务”功能进行配置。

常见问题与排错指南

1. 任务长时间不执行 / 不出文章

可能原因

  • 站点访问量太低,WP-Cron 没有被触发。
  • DISABLE_WP_CRON 被设置为 true,但外部计划任务未配置。
  • 任务已被限频或状态异常(如被标记为 deleted/failed)。

排查步骤

  1. 在“任务列表”中,选中一条任务,点击“立即执行一次”,观察是否能正常完成。
  2. 检查 wp-config.php 中是否定义了 DISABLE_WP_CRON
  3. 查看 logs/collect-rewrite.log 中是否有 cron.* 日志。
  4. 若怀疑 Cron 没触发,可临时通过浏览器访问 wp-cron.php 看是否有报错。

2. 抓取失败 / 返回 403 或需要登录

可能原因

  • 目标站点的 Cookie 过期或失效。
  • User-Agent 设置不当,触发了反爬机制。
  • 采集频率过高,被目标站点暂时封禁。

排查与解决

  1. 重新登录目标站点(如知乎),按前文步骤重新复制最新的 Cookie 和 UA。
  2. 在 Profiles 中更新 Cookie/UA 后保存,再用“测试抓取”按钮验证。
  3. 适当提高采集间隔(如从 1 分钟改为 10~30 分钟)。
  4. 如果仍然大量失败,请查看日志中的 crawl.fetch.*zhihu.* 等条目,结合错误信息调整策略。

3. AI 调用失败 / 超时 / 返回错误码

常见表现

  • 日志中出现 ai.chat.request 失败、ai.chat.error 等。
  • 任务状态长时间处于 running,最终失败。

排查建议

  1. 确认 API Endpoint 地址填写无误,并且服务器可以访问该地址(无被防火墙阻断)。
  2. 检查 API Key 是否正确、是否过期、是否有足够余额/配额。
  3. 适当增加超时时间,避免长文改写导致请求超时。
  4. 尝试换用较稳定、延迟更低的模型或节点。

4. 图片本地化失败 / 文章无特色图

排查方向

  • 查看日志中的 media.localize.* 相关条目,是否提示下载失败或写入失败。
  • 确认服务器的 wp-content/uploads 目录具有写入权限。
  • 检查远程图片链接是否可以在浏览器中直接访问(部分站点对外链有限制)。

5. 出现中文乱码

  • 在插件的 API/编码设置中,将“内容编码”设为 utf8
  • 确保 WordPress 数据库和主题都使用 UTF-8 编码。
  • 若日志内容出现乱码,一并检查服务器环境的默认字符集。

6. 文章重复 / 多次发布同一内容

  • 确认在采集目标/入队时已开启去重策略(基于 URL 或指纹)。
  • 在日志中搜索 queue.dedup 或类似字段,查看是否有“duplicates”提示。
  • 避免手动多次重复提交同一批 URL,或在工具箱和采集目标之间反复写入同一链接。

7. 入队按钮点击无反应 / 提交数量过少

  • 检查是否处于未授权模式:未授权状态下,每次最多 5 条,并有 24 小时限频。
  • 确保每个 URL/关键词各占一行,中间没有多余空格或特殊字符。
  • 观察页面是否有红色错误提示,或使用浏览器开发者工具查看 AJAX 返回信息。

知乎采集的特殊优化逻辑

多级兜底策略

为了尽量获得内容完整、配图丰富的知乎回答,插件对知乎回答页做了专门适配:

  • 支持 questionId 的多种 URL 形式(带/不带斜杠、带 query/hash)。
  • 判断回答是否过短(如字符数 < 700 或汉字数 < 300)时,会尝试选择同题下更长的回答。
  • 必要时会对 initialData 做更深层次的扫描,或调用知乎 v4 API 获取更多备选回答。
  • 优先选择至少包含一张图片的回答,保证内容质量。

相关日志关键字

  • zhihu.answer.too_short_try_next:当前回答过短,尝试下一条候选。
  • zhihu.answer.pick_longest_fallback:选择同题中最长的回答作为兜底。
  • zhihu.answer.deep_scan_try_next:对初始数据进行更深度的遍历。
  • zhihu.answer.api_try_next:调用知乎 API 拉取更多回答。
  • zhihu.answer.no_image_candidate:当前候选缺少图片。

最佳实践与使用建议

部署前的准备

  • 在测试环境验证一套完整流程(采集→改写→发布)。
  • 为生产环境单独准备一个稳定的 AI Key 和调用额度。
  • 为目标平台准备一个长期可用的账号和 Cookie。

线上运行建议

  • 合理设置采集间隔,避免集中在某一时间段高频抓取。
  • 分批、分组执行任务,平衡不同栏目之间的更新频率。
  • 定期检查日志文件大小,必要时进行归档备份。
  • 建议开启“追加来源与声明”,在法律允许范围内合理使用采集内容。

成本与质量控制

  • 选择性地对重点内容使用高档模型,对一般内容使用性价比较高的模型。
  • 缩短或优化提示词,减少无关内容生成。
  • 适当控制任务总量,避免一次性提交过多改写任务导致账单激增。

附录:日志关键字速查

架构与调度类

  • build.tag:当前插件版本和构建标签。
  • cron.schedule.register:注册计划任务。
  • cron.ensure.adjust:检测并调整 Cron 配置。
  • cron.reschedule.done:重排程成功。

采集与抽取类

  • crawl.fetch.start/ok:开始抓取/抓取成功。
  • crawl.extract.*:正文、标题、图片等抽取过程。

AI 与改写类

  • ai.prompt.title/body:发送给模型的提示词。
  • ai.chat.request/success:AI 请求发送与返回成功。
  • worker.rewrite.title_ok/body_ok:标题/正文改写完成。

发布与媒体类

  • post.publish.ok:文章发布成功。
  • media.localize.*:图片下载、本地化与设置特色图。

标签与后处理

  • worker.tags.done:AI 生成标签完成。

建议

当遇到问题时,先根据实际现象搜索日志中的关键字,再结合本说明文档逐条排查,可以快速定位问题所在。