|
去年冬天,网站我需要把一个小型设计博客的下载全部教程保存下来。那个站有四百多篇文章,器网每篇都配了高清截图。站整站下载器手动右键另存?网站干到第三篇我就放弃了。后来朋友扔给我一个工具,下载说“整站抓下来就行”。器网那是站整站下载器我第一次认真用网站下载器。 网站下载器跟普通下载工具完全是网站两码事。你给它一个首页地址,下载它自己顺着链接爬完整站,器网把HTML、站整站下载器CSS、网站JS、下载图片、器网字体全拽到本地。更关键的是,它会在本地重建目录结构,你点开index.html,整个站跟在线时长得一模一样。我用的那个叫HTTrack,开源免费,界面丑得感人,但管用。设置里有个“最大深度”选项,填3就抓三层链接,填0就全站无限爬——我那次设了0,硬盘里多了2.3GB的东西。 为什么有人需要整站下载 做竞品分析的产品经理会懂。把对手官网整个镜像下来,离线慢慢翻他们的定价页改过几版、帮助文档埋了什么关键词。比在线翻效率高太多。还有个做外贸的朋友,客户在非洲网速差,他把产品站整站抓下来刻成光盘寄过去。客户打开光盘就能浏览,不需要联网。 我自己最常用的场景是存档。有些独立博客作者哪天不高兴就把站关了,域名一过期,那些文章就真没了。互联网档案馆收录得不全,图片经常丢。整站下载器抓下来的是一份完整副本,连favicon都在。 几个实际用起来才会发现的坑 动态加载的内容抓不到。现在很多站用React或Vue,文章列表是JS渲染出来的,HTTrack这类传统工具只能看见空壳。解决办法是用带无头浏览器的工具,比如Cyotek WebCopy配合Chrome内核,或者干脆上wget加--recursive配合puppeteer脚本。麻烦,但能抓到。 还有robots.txt。正规下载器会遵守它,有些站直接写“Disallow: /”,你设了也没用。强行抓也不是不行,加个忽略robots的选项,但那就属于灰色地带了。我一般只抓允许的范围,或者直接找站长要备份。 登录后的内容更头疼。需要cookie或session的站,得先在浏览器登录,导出cookie给下载器。有些工具支持模拟登录,填用户名密码就行。但两步验证的站基本没戏。 选工具看什么 HTTrack够用但老。Windows上有个叫Teleport Pro的,界面像Windows 98,功能意外地稳。Mac用户可以用SiteSucker,App Store里卖$4.99,胜在简单。命令行党直接wget -r -p -k -E,一行命令搞定,就是参数得查半天。 我现在的做法是:小站用HTTrack,动态站用Cyotek WebCopy,需要登录的用wget配合手动导cookie。没有哪个工具能通吃所有情况。那些宣传“一键整站下载”的软件,多半在某个环节会掉链子。 最后提醒一句:抓下来的站别拿去公开传播。自己存档、分析、离线看没问题,原样挂到公网上就涉及版权了。工具是中性的,用的人得有点分寸。 |