网友作品 #000131 · 提交于 2026/08/11
文库吧文档下载助手:预览文档一键转PDF
★★★★★业余水平AI 编程工具国内其他模型browser





1 / 5
作品简介
这是一套 Chrome/Edge 浏览器扩展作品,核心子项目是「文库吧文档下载助手」:在文库吧(wenkub.com)的文档预览页打开扩展面板,它会识别文档名称与总页数,逐页抓取预览图片,经 Canvas 转 PNG 后用 jsPDF 合成标准 PDF 保存到下载目录,一份 77 页的文档可完整下载为可直接阅读的本地 PDF。
围绕这个实战项目,作者还沉淀出一套 AI 驱动的浏览器扩展开发工作台:零基础用户只需描述需求,AI 按照知识库定义的流程,完成从环境搭建、编码、加载验证到安装包交付的全部技术细节。
核心亮点
- 突破动态渲染:预览图片由服务端脚本动态生成、静态网页里看不到,扩展从页面隐藏参数中提取图片地址与总页数
- GIF 转 PDF:预览图为 GIF 格式、jsPDF 不直接支持,先经 Canvas 转 PNG 再合成,并有多级容错降级策略保证兼容
- 进度可视:面板实时显示「下载第 N/共 M 页」与完成状态,完成后 PDF 直接可读
- 标准技术栈:Manifest V3 + 原生 JS,content script 注入 + popup 面板 + service worker,适配 Chrome/Edge
- 完整工具链:配套 6 种项目蓝图模板、13 篇参考文档、10 个自动化脚本(Node.js 自举安装、构建打包、自动启动浏览器加载验收等)
- 降低交付门槛:可生成安装器目录(依赖 .NET 8 Desktop Runtime 的 exe 安装方式),方便分发给非技术用户
技术与工具
- Manifest V3 扩展标准,原生 JavaScript,jsPDF 生成 PDF,Canvas 做图片格式转换
- 自动化脚本采用 PowerShell 编写,安装器依赖 .NET 8 Desktop Runtime
- 整个仓库以 AI 技能知识库(SKILL.md)组织,定义触发词、规则与执行清单,让 AI 按五阶段流程自动开发扩展
开发过程
- 起因很直接:网站不让下载文档,作者决定自己做一个
- 按「需求澄清—环境初始化—编码实现—质量验证—打包交付」五个阶段推进,版本从 v1.1.x 一路迭代到 v1.4.0
- v1.4.0 把文库吧下载器升级为直接生成 PDF 并更换了新图标
适用场景
- 把在线预览的公开文档批量留存为本地 PDF,方便离线查阅与资料整理
- 想快速实现自己浏览器扩展想法的用户,可直接复用这套开发工具链与项目蓝图模板
原始提交内容(点开查看,可复制全文去问 AI)
项目介绍
chrome-extension-dev_DownWenku 是一个 AI 驱动的 Chrome/Edge 浏览器扩展开发工作台(skill 名:chrome-extension-dev,当前版本 v1.4.0),附带一个实战子项目——文库吧文档下载助手。
核心定位
本仓库本质上是一套 面向 AI 助手的浏览器扩展开发知识库 + 工具链。设计理念是 “AI 替用户做一切”:零基础用户只需描述需求,AI 负责从环境搭建、编码、浏览器加载验证到最终交付安装包的全部技术细节。
技术特性
| 维度 | 说明 |
|---|---|
| 目标平台 | Chrome / Edge(Windows) |
| Extension 版本 | Manifest V3 |
| 技术栈优先级 | 原生 JS > Vite > CRXJS |
| Node.js 要求 | 24.x LTS(脚本自动自举安装) |
| 交付方式 | installer.exe 安装器目录(依赖 .NET 8 Desktop Runtime) |
| 分发授权 | 内置多重授权追踪(LicenseId + WatermarkText) |
目录结构
chrome-extension-dev_DownWenku/
SKILL.md # AI 技能主入口,定义触发词、规则与执行清单
CHANGELOG.md # 完整版本变更记录(v1.1.9 ~ v1.4.0)
LICENSE_TRACE.txt # 授权声明与分发指纹
package.json # 根级依赖(仅 jimp 图片处理库)
projects/ # 【实战项目】
wenku-downloader/ # 文库吧文档下载助手(Chrome 扩展)
extension/
manifest.json
icons/ # 蓝白渐变风格图标(16/48/128px)
vendor/ # jsPDF 库(355KB)
src/
content/ # 核心下载逻辑 + 注入面板 UI
popup/ # 工具栏弹窗界面
background/ # Service Worker
references/ # 【参考文档体系】13 篇 + 工作流文档
workflows/ # 完整开发流程(5 阶段强制执行)
01-13 编号文档 # 覆盖需求编码验证交付全链路
scripts/ # 【自动化工具链】10 个脚本
bootstrap_project.ps1 # 项目初始化
instantiate_blueprint.ps1 # 蓝图实例化
ensure_nodejs.ps1 # Node.js 自举安装
build_extension.ps1 # 构建打包
launch_browser.ps1 # 启动浏览器并自动加载扩展
installer.exe # WPF 安装器
browser-config.json # 浏览器适配配置
...
templates/ # 【项目蓝图】6 种模板
project-blueprints/ # popup / side-panel / content-script
# background-service / devtools-panel
# side-panel-wps-bridge
examples/ # 8 个需求场景示例
docs/ # 预留扩展文档目录
子项目:文库吧文档下载助手
位于 projects/wenku-downloader/,是一个已完成并验证通过的 Chrome 扩展,功能为:
- 目标站点:
wenkub.com(文库吧) - 核心能力:从文档预览页提取图片 URL 和总页数,批量下载 GIF 页面图片,通过 Canvas 转 PNG,最终用 jsPDF 合成并直接保存为 PDF 文件
- 技术路线:原生 JS(content script 注入 + popup + service worker)
- 关键挑战攻克:
- 图片由服务端 JS 动态渲染,静态 HTML 中不可见 从
hidden input#dp和var fCount提取参数 - GIF 不被 jsPDF 直接支持 Canvas 转 PNG 后再合成
- 多级容错降级策略,确保兼容性
- 图片由服务端 JS 动态渲染,静态 HTML 中不可见 从
开发流程
按照 references/workflows/development-lifecycle.md 定义,完整开发分为 5 个强制阶段:
- 需求澄清 确定插件类型、目标网站、权限、UI、交付对象
- 环境与初始化 Node.js 检查、项目脚手架搭建
- 编码实现 分层编码、补齐权限与错误处理
- 质量验证 Lint、构建、自动启动浏览器加载扩展验收
- 打包交付 生成
dist/安装器目录(installer.exe + 配置 + 说明)
版本演进摘要
| 版本 | 关键里程碑 |
|---|---|
| v1.1.x | CRXJS 工作流、页面主世界桥接、WPS 桥接蓝图、稳定测试 profile |
| v1.2.x | BAT 安装包、本地 HTTP+注册表策略安装双路线、文档精简重整 |
| v1.3.x | 冗余文档收敛、references 编号重整为 01-13 |
| v1.4.0 | 当前版本,文库吧下载器升级为 直接 PDF 生成 + 新图标 |
本作品归公众号 Excel催化剂 所有,内置多重授权追踪信息,仅限授权用户自用,禁止擅自传播。