小说广告插入器 NovelAdInserter:把广告优雅地「种」进你的 txt 小说
纯本地运行
零乱码
批量 / 单本
字数自适应
强制上限
如果你手上有大量 txt 格式的小说,需要在正文里插入推广广告、公众号引流、提取码或书单链接,又不想一行行手动复制粘贴——小说广告插入器(NovelAdInserter) 就是为此而生的本地桌面工具。它把「识别章节 → 计算插入点 → 渲染广告模板 → 批量写入」整套流程自动化,且全程在你的电脑上完成,文件不外传。

▲ 软件主界面概念图(实际界面为下方 HTML 还原示意)
一句话定位:一个像「批处理 + 排版」一样可靠的本地工具——你定规则,它负责把广告精准、均匀、可复现地插进每一章,绝不乱码,也不覆盖你的原稿(除非你只选了一个文件并明确确认)。
一、它能做什么(核心功能)
① 六种插入位置
开头、结尾、章节前、章节尾、随机句号后、随机段落后,可任意组合;随机位置支持精确数量与固定种子复现。
② 章节级精准控制
章节前/尾可设「章节数」:填 0 = 每章都插,填 N = 从全部章节中随机选 N 章插入,密度由你掌控。
③ 变量广告模板
模板支持 {书名}{章节}{作者}{日期},逐章渲染章节名;{随机}/{随机N} 生成不重复随机内容(如提取码、短链),字符集与长度可调。
④ 字数自适应 + 强制上限
勾选「按字数自动设置」后,按每 N 字 1 个自动定随机广告数;「最多插入 N 个」作为强制上限始终生效,防止广告过多。
⑤ 批量 + 拖拽文件夹
可直接拖入文件夹,后台线程递归收集全部 .txt(含子目录),主线程不卡死;多文件输出 原名_广告.txt,绝不覆盖源。
⑥ 预览优先 · 配置可保存
写入前高亮预览插入点与上下文,确认后再落盘;一键保存全部配置,下次启动自动加载,无需重配。
零乱码:从编码到章节识别都「聪明」
- 编码兜底链:BOM 嗅探 → 严格 UTF-8 → charset-normalizer → GB18030 兜底,永不抛出解码异常;写回编码与 BOM 均可控。
- 章节识别:内置「第X章 / 第X回 / Chapter」预设,也支持你自定义正则(行首锚定,编译期即校验)。
- 转码 / 去干扰码:一键剔除零宽字符、广告符号、软连字符等干扰码并统一转码,CSV 报告留痕。
二、软件界面长什么样(真实还原)
下面是软件主窗口与「插入位置」面板的真实界面还原(HTML 绘制,所见即所得):
▲ 主窗口 + 插入位置面板(v0.3.3)。勾选「按字数自动设置」后,两个随机微调框自动禁用,改由字数驱动。
三、实际效果:插入前后对比
假设广告模板为 【公众号】关注「以名知名」看全集 {随机6},在「章节前 + 字数自适应」模式下,正文会变成这样:
插入前(原文)
第一章 初入江湖
叶辰醒来时,发现自己躺在一艘破船上。
海风咸涩,远方雾气里隐约有钟声。
他握紧腰间的断剑,不知归属何方。第二章 迷雾码头
码头比想象中热闹,各色人等穿梭。
叶辰醒来时,发现自己躺在一艘破船上。
海风咸涩,远方雾气里隐约有钟声。
他握紧腰间的断剑,不知归属何方。第二章 迷雾码头
码头比想象中热闹,各色人等穿梭。
插入后(含广告)
【公众号】关注「以名知名」看全集 A3K9ZP
第一章 初入江湖
叶辰醒来时,发现自己躺在一艘破船上。
【公众号】关注「以名知名」看全集 Q7M2BX
海风咸涩,远方雾气里隐约有钟声。
他握紧腰间的断剑,不知归属何方。【公众号】关注「以名知名」看全集 T1R8CW
第二章 迷雾码头
码头比想象中热闹,各色人等穿梭。
第一章 初入江湖
叶辰醒来时,发现自己躺在一艘破船上。
【公众号】关注「以名知名」看全集 Q7M2BX
海风咸涩,远方雾气里隐约有钟声。
他握紧腰间的断剑,不知归属何方。【公众号】关注「以名知名」看全集 T1R8CW
第二章 迷雾码头
码头比想象中热闹,各色人等穿梭。
关键细节:每个
{随机6} 在单文件内互不重复(字符集剔除易混淆的 0/O/1/I),同一章的 {章节} 会被渲染成真实章名;若你设了「最多 50 个」上限,哪怕小说有百万字,广告也绝不会超过 50 处——且开头、结尾、章节位的广告优先保留,只削减随机填充。四、典型使用场景
| 场景 | 痛点 | 本工具怎么用 |
|---|---|---|
| 网文作者 / 公众号引流 | 每章末尾要放公众号、二维码话术,手动复制累且易漏 | 模板写一句引流语 + {章节},勾选「章节尾 / 每章都插」,一键批处理全本 |
| 小说资源站 / 提取码分发 | 每本要塞不同提取码、下载链接,且不能重复 | 用 {随机6} 生成不重复提取码;章节前/尾 + 字数自适应控制密度 |
| 本地小说库整理 | 几十本 txt 来自不同来源,编码乱、夹杂干扰码 | 拖入整个文件夹 → 后台递归收集 → 先「转码/去干扰码」,再批量插广告 |
| 单本精修 | 只想改一本,插完直接覆盖原文件最方便 | 仅选 1 个文件 → 写入后原子覆盖原文件(预览确认后执行,中途异常不损原稿) |
| 可控密度的营销 | 广告太多惹人烦,太少没效果 | 「每 N 字 1 个」自动定数 + 「最多 N 个」强制上限,双保险 |
五、三步上手(操作流程)
- 选文件:点击添加或直接把小说文件夹拖进窗口,后台自动收集全部 .txt 并探测编码(界面不卡)。
- 定规则:在「插入位置」勾选插入点;在「广告模板」写文案与变量;按需开启「字数自适应 + 强制上限」。
- 预览 → 写入:点「预览插入」看高亮效果与预计插入数,确认无误点「确认写入」。多文件生成
原名_广告.txt,单文件则覆盖原文件。
安全提示:「单文件覆盖原文件」是破坏性操作,但必须经过「预览 → 确认写入」两步才会执行,且采用临时文件 + 原子替换,即使写入中途出错也不会留下半截原稿。想保留原文件,同时选 2 个及以上文件即可回到生成兄弟文件的模式。
六、版本演进(持续打磨)
| 版本 | 关键能力 |
|---|---|
| v0.3.0 | 随机占位符(不重复)、章节前/尾 + 随机选章数量控制、全配置持久化自动加载 |
| v0.3.1 | 加入作者信息(以名知名 · 8src.com);修复拖拽文件夹卡死;插入提速至 O(N);启动零告警 |
| v0.3.2 | 单文件模式:仅 1 个文件时写入后原子覆盖原文件 |
| v0.3.3 | 字数自适应(按字数自动定随机广告数)+ 强制上限(防广告过多) |
七、技术规格与运行
- 平台:Windows 桌面(PySide6 开发),打包为单目录 exe,双击即运行,无需安装 Python。
- 隐私:纯本地处理,不联网、不上传任何文件。
- 性能:插入算法为 O(N) 单次拼接,百万字长篇可秒级完成;编码兜底确保 GBK / UTF-8-BOM / 无 BOM 均零乱码。
- 质量保障:33 项核心单元测试 + 9 个 UI 无头冒烟场景全绿,覆盖编码、章节识别、随机可复现、单文件覆盖、字数自适应与强制上限。

▲ 批量处理概念图:把整个小说文件夹交给它,安静地在后台完成收集与插入。
小结:小说广告插入器把「插广告」这件繁琐、易错、怕乱码的事,变成了一个可预览、可复现、可批量的本地自动化流程。无论你是网文作者做公众号引流、资源站分发提取码,还是单纯整理本地小说库,它都能让你从重复劳动里解放出来——并且,广告密度永远在你的「强制上限」之内。