用户登录
个人主页 用户中心 我的订单 添加授权 管理授权
退出登录
用户登录 用户注册
欢迎来到 UC建站系统

一个做了六年职业教育资讯站的朋友,服务器机房割接把30%的静态资源弄丢了,靠三个月前用HTTrack做的离线归档包,4小时全量恢复。同一天另一个站长网站被关,wget跑了三小时只扒下来一堆空白HTML

做网站的人迟早会遇到同一个场景:网站要搬家、要备份、要做离线归档,或者看中了一个静态站想下载下来本地研究。这时候你会发现,同样叫"整站下载",HTTrack下回来的是一个完整可浏览的镜像网站,wget不加参数下回来的是几百个缺少CSS和图片的残废页面。差距不在工具本身,在你知不知道每个工具的天花板在哪里。HTTrack、wget、SiteSucker、在线工具——这四个方案看起来都能"下载整个网站",但它们处理的根本不是同一类网站。HTTrack和wget只适合传统服务端渲染的静态或半静态站,遇到React/Vue写的SPA应用直接白给。SiteSucker能搞定部分动态内容但遇到登录墙和反爬就停。在线工具最方便但下载量受限、大站跑不完。

四个克隆方案的能力边界,选错工具等于白跑

工具能克隆什么搞不定的速度一句话定位
HTTrack传统服务端渲染网站、静态站、博客SPA单页应用、重度JS渲染中等,支持断点续传新手最友好,有图形界面,所见即所得
wget任何HTML网站,命令行自动化JS渲染、需要登录的页面快,单线程可调速服务器端批量自动化首选,脚本友好
SiteSuckerMac/iOS,有一定JS渲染能力登录墙、复杂反爬较快Mac用户首选图形界面工具
在线工具/WebClone小站快速克隆、前端页面复刻大站超时、资源加载不全依赖服务器性能零安装、即开即用,适合几百页以内

HTTrack:二十年老牌工具,图形界面让它成为入门首选

为什么HTTrack是下载量最大的整站克隆工具

HTTrack从2002年发布至今已经维护了二十多年,开源免费,跨平台支持Windows/Linux/Mac。它的核心价值是"下载完就能用"——下载一个网站后,本地的所有链接会自动转换为相对路径,点击任何链接跳转到的都是本地文件,实现真正的离线浏览。

和wget的最大区别在于操作方式。HTTrack有完整的图形界面(WinHTTrack),通过向导一步步设置:输入目标网站URL→设置下载深度→选择文件类型→开始下载→显示实时进度和已下载文件列表。下载过程中能看到每个文件的下载状态、大小、速度,出错了有明确的错误提示。对不熟悉命令行的站长来说,这个学习成本几乎为零。

关键配置项,设错了要么漏文件要么把整个互联网下回来:

· 深度限制(depth):默认不限深度会递归下载所有链接,如果目标网站外链很多,会无限跑下去。建议设3-5层。WordPress博客通常3层就覆盖所有文章页面。

1 - 一个做了六年职业教育资讯站的朋友,服务器机房割接把30%的静态资源弄丢了,靠三个月前用HTTrack做的离线归档包,4小时全量恢复。同一天另一个站长网站被关,wget跑了三小时只扒下来一堆空白HTML - UC建站系统

· 域名限制:只下载同一域名下的文件,不跟随外链。这是防止"把整个互联网下回来"的安全阀。

· 文件类型过滤:默认下载HTML/CSS/JS/图片/文档。如果你的目标是备份文章内容,可以去掉视频和大型PDF,节省大量时间和磁盘空间。

· 速率限制:可以限速下载(比如限500KB/s),避免对目标服务器造成过大压力。有些网站有反爬机制,下载太快会被封IP,限速反而是保护自己的手段。

短板:遇到React/Vue写的SPA单页应用,HTTrack只能下载到一个空壳HTML(里面只有<div id="app"></div>),实际内容由JavaScript动态生成,HTTrack执行不了JS。另外,需要登录才能访问的页面、有验证码的页面、有反爬机制(Cloudflare五秒盾等)的页面,HTTrack全部搞不定。

wget:命令行用户的终极武器,一条命令镜像一个站

wget镜像命令:一行代码,但每个参数都在踩坑边缘

wget是Linux/Mac系统自带的命令行下载工具,也是服务器端批量自动化方案的首选。一条经典命令:

wget --mirror --convert-links --adjust-extension --page-requisites --no-parent https://目标网站.com

拆解一下每个参数在干什么:

· --mirror:开启镜像模式,等同于 -r -N -l inf --no-remove-listing,递归下载、只下载更新的文件、不限深度。

· --convert-links:下载完成后自动把HTML里的绝对链接改成相对链接,让本地镜像可以离线点击浏览。不加这个参数,本地打开HTML文件后所有链接还是指向线上,点了就跳回线上网站。

· --adjust-extension:如果下载的文件没有后缀名但Content-Type是text/html,自动加.html后缀。不加的话某些CMS生成的URL(如 /about)下载后没有后缀名,本地浏览器打不开。

· --page-requisites:下载页面渲染所需的所有资源(CSS、JS、图片、字体)。不加这个参数只下载HTML,打开后没有样式和图片。

· --no-parent:不追索到父级目录,防止从 /blog/article1 一路爬到根目录再爬到其他分区。

三个进阶参数,知道和不知道差别很大:

· --wait=1:每次请求之间等待1秒。不加这个参数wget会以最快速度连续发包,小型虚拟主机可能被你打挂,也可能触发反爬封IP。

· --limit-rate=500k:限速500KB/s。和--wait同理,是礼貌爬取的基本配置。

· --user-agent="Mozilla/5.0 ...":伪装浏览器UA。有些网站会拒绝wget默认的UA(Wget/1.x),返回403。

2 - 一个做了六年职业教育资讯站的朋友,服务器机房割接把30%的静态资源弄丢了,靠三个月前用HTTrack做的离线归档包,4小时全量恢复。同一天另一个站长网站被关,wget跑了三小时只扒下来一堆空白HTML - UC建站系统

wget相对于HTTrack的核心优势是可以写进脚本自动化运行。你有20个站要备份,写一个shell脚本循环跑,设个cron每周日凌晨自动执行,比手动打开HTTrack点20次方便得多。另外wget支持断点续传(-c参数),一个10万页的大站下载到一半网络断了,重新执行命令会自动从断点继续,不会重头再来。

短板:和HTTrack一样,wget不执行JavaScript。下载SPA应用只能拿到空白页面。需要登录Cookie的页面也不支持(除非手动从浏览器导出Cookie并通过--header参数传入)。另外wget的命令行输出比较简略,大站下载时看不到进度条,只能看到一个个URL滚过去,不知道什么时候能下完。

在线工具和AI方案:零安装但各有局限

WebClone — 开源在线扒站工具,适合小站和前端仿站

WebClone是GitHub上的开源项目,基于Python Flask+WebSocket实现,浏览器里打开网页→输入目标URL→点击下载→自动打包成ZIP供下载。它的定位是"在线扒站"而非"全站镜像",适合下载单个页面及其关联资源,而不是几千页的大站。

优势是零安装、跨平台,在手机或平板上都能用。输出是标准HTML+CSS+JS的静态文件包,可以直接部署到任何静态托管服务。

短板:大站会超时,页面超过几百个就容易卡住。依赖部署服务器的性能,如果部署在低配VPS上体验很差。不处理登录和反爬。

AI网站复刻工具 — 适合前端页面克隆,但不适合整站备份

2025年后出现了不少AI驱动的网站克隆工具(如Energent.ai、screenshottocode等),原理是截取网页截图→AI识别布局→生成对应的HTML+CSS+JS代码。这种方式对单个页面的前端复刻效果很好,生成的代码结构清晰、可以直接二次开发。

但它不是整站下载工具。AI只能克隆当前这一个页面(而且只克隆视觉层面,不克隆后端逻辑、数据库、用户系统)。如果你需要的是"把整个网站几百篇文章完整备份到本地",AI工具做不到。它适合的场景是:看到某个网站的页面设计很好看,想把它的布局和样式快速复刻出来作为自己网站的模板。

短板:页面和页面之间的链接关系不会保留。AI生成的代码和原站代码不完全一样,SEO标签、结构化数据等可能丢失。

kage — Go语言写的轻量新秀,用headless Chrome处理动态页面

kage是2025年后出现的新工具,用Go编写,底层调用headless Chrome渲染页面,能处理部分JavaScript渲染的内容。它的设计思路很独特:用Chrome打开每个页面→等JS执行完毕→截取最终渲染的HTML→剥离所有JS代码→保存纯静态HTML。这样既解决了HTTrack/wget的JS渲染问题,又保留了离线可浏览的特性。

适合克隆那些"看起来像静态站但实际是JS生成"的网站,比如文档站(VuePress/Docusaurus生成的)、博客(Next.js/Gatsby生成的)。

短板:需要安装Chrome或Chromium,对服务器环境有要求。速度比wget慢很多(每个页面都要启动浏览器渲染)。用户登录、复杂交互仍然搞不定。项目较新,社区和文档不如HTTrack成熟。

五类场景,只有一款工具最合适

你的场景核心需求首选工具理由
个人博客/企业站备份完整下载、离线可浏览、不需要代码HTTrack图形界面向导式操作,下载完自动转相对路径,零门槛
多站批量定时备份脚本自动化、定时执行、服务器端运行wget一条命令配cron全自动,20个站一个脚本搞定
Mac用户下载静态站不想用命令行、不想装虚拟机SiteSuckerMac原生图形界面,App Store可下载
SPA文档站/Next.js博客克隆JS渲染的页面需要执行后才能拿到内容kage 或 Puppeteer脚本headless Chrome渲染后再保存HTML
快速下载单个页面/前端仿站不装软件、即开即用WebClone在线 / AI复刻工具浏览器打开就能用,几百页以内够用

三个所有工具都绕不开的限制,提前知道就不会白跑

SPA单页应用:HTML下载下来只有空壳

React、Vue、Angular写的网站,HTML文件本身只有一个挂载点(如<div id="root"></div>),所有内容由JavaScript在浏览器端动态生成。HTTrack和wget只能下载到这个空壳HTML,看不到任何实际内容。解决方法:用kage或自写Puppeteer/Playwright脚本,先用headless浏览器渲染页面→等待JS执行完成→获取完整HTML→保存到本地。但这会慢很多(每个页面1-3秒),而且需要额外的环境配置。

动态内容和数据库:能下载到的永远是表面

网站镜像工具只能下载前端静态资源(HTML/CSS/JS/图片),下载不到后端的PHP/Python/Node.js源码,下载不到MySQL数据库里的内容。你下载一个WordPress网站得到的是WordPress生成的静态HTML页面,不是WordPress的PHP源码和数据库。如果目标是"完全克隆一个动态网站并部署到新服务器",网站镜像工具做不到——你需要的是网站搬家工具(迁移数据库+源码文件),不是镜像下载工具。

大站下载的时间和磁盘成本被严重低估

一个中等规模的WordPress博客(500篇文章+图片),整站下载大约需要:HTML文件3000个(文章+分类+标签归档页)、图片2000张(每篇文章平均4张图)、CSS/JS文件100个。总文件数约5000个,总大小约500MB-2GB。用HTTrack或wget限速500KB/s,需要30-60分钟。

一个大型电商站(10万产品+图片),下载量可能达到50GB以上,需要几天甚至一周。而且很多网站有无限滚动分页、筛选组合参数,这些URL组合起来是天文数字——工具会陷入无限循环,永远下不完。这种场景需要精确设置下载深度和URL过滤规则,只下载需要的页面类型。

网站镜像克隆这件事,HTTrack负责"看得见的全下载下来还能离线浏览",wget负责"服务器端自动化批量跑",kage负责"HTTrack和wget都搞不定的JS渲染页面"。选工具的核心不是比功能多少,是比你的目标网站是传统服务端渲染还是SPA——这是所有克隆工具的第一道分水岭。跨过去了,剩下的就是配好参数、设好限速、准备好磁盘空间。还有一条底线:镜像下载只能拿到前端的皮,拿不到后端的源码和数据库。要搬家去用搬家工具,要克隆前端去用HTTrack/wget,两件事不要搞混。

相关推荐
在线客服
👇找客服拿折扣
QQ咨询&售后
在线时间
11:00 ~ 5:30
QQ:3155555535
👇联系QQ
👇联系WX
首页 程序 帮助 登录