文件下载页生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_1793b15c/file-to-download-page
技能介绍
它解决什么问题
交付一个文件给客户或同事时,发个裸文件链接往往伴随着一串追问:这个文件是干嘛的?能不能直接双击运行?环境要不要额外装什么?File → Download Page 把这个沟通过程固化进页面:打开 HTML 就能看到解决什么问题、有哪些局限、需要什么环境、常见使用场景,看完点按钮直接下载,不需要再来回解释。
它如何工作
核心机制非常简单,只有两个步骤:
- 单文件:把文件内容做
base64编码,直接写进<a href="data:...;base64,...">链接的download属性里,浏览器点链接就能还原出原始字节。 - 多文件 / 目录:先用
zipfile打包成单个 zip,再对 zip 做同样的内嵌处理,最终页面只有一个下载入口。
整个技能只依赖 Python 标准库(base64、zipfile、html),不需要联网,也不引入任何第三方包。页面配色为伊顿蓝橙风格(#667eea 紫 + #fa8c16 橙),各信息区之间用四色渐变横条分隔,下载区以文件卡片横排展示文件名和大小,移动端做了响应式适配。
适用边界
需要注意三个实际限制:
- 体积膨胀:base64 编码会让体积增加约 33%,原始文件超过 8MB 左右时生成的 HTML 会明显变大,加载变慢。
- 浏览器上限:
dataURI 长度存在上限(通常数十 MB 量级),超大文件可能在浏览器端下载失败,这种情况需要改用分片传输或外部托管。 - 多文件合并:多个文件会被统一打包进同一个 zip,而不是每个文件一个独立按钮,这是为了保持页面简洁而做的取舍。
适合小体积、一次性交付的场景;大文件分发仍建议走常规的文件服务。
使用场景
- 独立开发者交付软件安装包时,需要把说明文档和配置文件一起打包成网页让客户直接下载
- 技术博主分享代码示例时,要把可运行的项目和README打包成HTML页面供读者一键获取
- 团队内部分享工具脚本时,需要附带使用说明和环境依赖清单,让同事打开页面就能下载使用
- 课程讲师分发课后作业模板时,要把多个示例文件统一打包成带介绍的下载页面发给学生
适合人员
- 独立开发者:经常需要把软件包和文档打包交付给客户,希望减少重复沟通
- 技术讲师:需要向学生分发课程资料和代码模板,希望学生能自助下载无需单独发文件
- 开源维护者:分享代码库时需要附带完整的使用说明和安装指南,让贡献者快速上手
- 内部工具开发者:给同事交付脚本或工具时,需要附带环境要求和使用场景说明