返回作品列表

网友作品 #000131 · 提交于 2026/08/11

文库吧文档下载助手:预览文档一键转PDF

★★★★★业余水平AI 编程工具国内其他模型browser

作品作者

frey业余水平
开发工具
AI 编程工具
AI 模型
国内其他模型
使用 Skill
browser
提交你的作品

作品简介

这是一套 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 后再合成
    • 多级容错降级策略,确保兼容性

开发流程

按照 references/workflows/development-lifecycle.md 定义,完整开发分为 5 个强制阶段:

  1. 需求澄清 确定插件类型、目标网站、权限、UI、交付对象
  2. 环境与初始化 Node.js 检查、项目脚手架搭建
  3. 编码实现 分层编码、补齐权限与错误处理
  4. 质量验证 Lint、构建、自动启动浏览器加载扩展验收
  5. 打包交付 生成 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催化剂 所有,内置多重授权追踪信息,仅限授权用户自用,禁止擅自传播。