Website-downloader 整站备份保姆级指南:输入一个网址,离线打包整站到手
【免费下载链接】Website-downloader💡 Download the complete source code of any website (including all assets). [ Javascripts, Stylesheets, Images ] using Node.js项目地址: https://gitcode.com/GitHub_Trending/we/Website-downloader
给客户演示到一半,想截图的参考页面却死活打不开;想研究某个站点的页面结构,又怕自己的请求反复砸到人家服务器——这些时刻,你会很想手边有一份随时能打开的离线副本。Website-downloader 就是干这事的整站备份小工具:给它一个网址,它接手把页面、图片、样式、脚本全部搬进硬盘,最后吐出一份 zip 压缩包到你手上。
最快配置方法:三步在本地跑起整站备份服务 🚀
git clone https://gitcode.com/GitHub_Trending/we/Website-downloader把代码拉到本地npm install装好依赖(需要 Node.js 环境;真正的抓取靠系统里的 wget,Linux 一般自带,没有的话先装上)npm start起服务,浏览器打开http://localhost:3000/,填入想保存的网址、点开始,盯着页面里的实时日志看就行
它是什么来头:开在自己电脑上的下载小站
说白了,它是一个跑在本地机器上的 Node.js 小服务:网页只有一个输入框,你提交网址,后台的抓取、链接改写、压缩、打包整条流水线就自己转起来。你不用写爬虫规则,也不用配任何抓取策略,更不用关心压缩怎么实现——适合想把任意网站存成离线副本的人,个人收藏、竞品研究、前端练手都能用。
幕后机制拆解:整站下载是怎么完成的
真正干活的代码在 wget/index.js 里,一句话概括就是下载、打包、推送三件事接力:
| 机制 | 白话作用 |
|---|---|
wget -mkEpnp递归抓取 | 页面图片样式一次搬齐 |
| 相对链接改写 | 断网打开也能正常跳转 |
| archiver 压缩 | 整个站压进一个 zip |
| socket.io 推日志 | 进度实时刷到浏览器页面 |
除了表里这些,命令行里还带了--no-if-modified-since:wget 默认会先问一句"文件变过没有",没变就跳过不重下;加上它之后每次都是实打实重新拉取,不会因为本地有旧缓存而漏掉更新过的文件。
什么时候用得上:四个真实使用场景
- 竞品研究:产品经理对比两家方案时,把站点整份存下来,离线抠页面结构和交互细节
- 爬虫练手:新手学爬取前,先拿本地 HTML 慢慢琢磨,不打扰线上服务器
- 现场排障:线上页面偶发抽风,抓一份快照带回工位,对照着复现问题
- 私人数字馆藏:喜欢的文档站和独立作品页,存进硬盘留底,随时回看
用前提醒:三个容易踩的坑
- 先确认 wget 装好了:服务本身只是调度,真正干活的是系统里的 wget 命令,缺了它抓取会直接失败
- 留足磁盘空间:抓下来的文件直接铺在项目目录下,zip 再写到
public/sites/,大站点等于先吃两份空间 - 同名会被覆盖:目录和压缩包都以域名命名,同一个站第二次下载会盖掉上一次的成果
第一次就能跑通,说明你已经有了一台随叫随到的整站备份机——顺手去仓库点个 Star,算是对这份便利说声谢谢。
【免费下载链接】Website-downloader💡 Download the complete source code of any website (including all assets). [ Javascripts, Stylesheets, Images ] using Node.js项目地址: https://gitcode.com/GitHub_Trending/we/Website-downloader
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考