最近我迷上了一个特小众的单机游戏,叫《边境旅人》。这游戏贼老,攻略都是十几年前论坛里老哥们一个个字敲出来的。结果我玩到后期,发现那些攻略网站要么打不开了,要么就是论坛服务器直接关了,好多关键信息根本找不到。
当时我就火了,不行,我得把现存的那些零零散散的攻略全都扒下来,自己建个离线资料库。我确定了目标:找到一个现在还能访问的、相对完整的英文维基站,然后把里面几百个页面全部变成我自己的本地文件。
第一次尝试:简单粗暴的失败
我一开始想得简单。不就是下载网页吗?我打开了浏览器,找到了那个维基站,开始一页一页地复制粘贴。干了差不多十五分钟,手都快抽筋了,一看成果,文字格式乱七八糟,图片一张都没带过来。这招不行,太慢,效率为零。
我又换了个思路,用浏览器的“打印到PDF”功能。结果更糟,虽然能生成PDF,但侧边栏、广告、网站的抬头,全都给我原封不动地打印进去了。一个关键步骤的攻略,可能要占三页纸,密密麻麻的根本没法看,排版完全毁了。
我折腾了一下午,意识到这种简单方法根本搞不定大批量、结构复杂的网页内容。必须动用“黑魔法”了。
启动攻略批量抓取计划
我跑去几个技术论坛里翻,看看那些爬虫老哥们都是怎么干活的。专业工具太复杂,我不想为了下载几篇攻略去学一套Python。我锁定了一个浏览器扩展工具,这东西牛,它能模拟人访问网页,但又不带走那些没用的排版元素。
- 第一步:我先跑到浏览器商店里,找到了这个工具(名字就不说了,怕你们说是广告,反正功能是批量网页存档)。安装好,重启浏览器。
- 第二步:打开维基的“主目录”页面,我点开了那个扩展工具的设置面板。这里是关键,我调整了抓取深度,选择了“三层链接深度抓取”,让它不仅抓当前页,还要顺着链接往下挖三层。
- 第三步:设置输出格式。这回我没选PDF,我选了“单文件HTML包”,这样图片和文字都能打包在一起,方便后面编辑。
- 第四步:我点了“启动深度分析和下载”。电脑风扇一下子转了起来,CPU占用率直接飙满。我看着它在后台疯狂地跑,一个小时内,它访问了几百个链接,生成了一个巨大的压缩包。
我解压开那个包,看到了上百个单独的HTML文件。虽然数量是对了,但这“黑魔法”也不算完美。它把所有的攻略内容都扒下来了,但同时还带回来一大堆没用的东西,比如维基的“用户注册页面”、“捐赠页面”,甚至还有一些已经失效的外部链接页面,它也给存进来了。
我花了差不多半天时间,打开这些HTML文件,删掉那些垃圾内容,再用软件把剩下的有效文件合并成一个清爽干净的PDF手册。虽然中间又动了手脚,但至少我实现了把整个攻略站搬回家的目标。我手机里躺着这套独家离线攻略,坐地铁也能随时查阅了。这就是我最近折腾的全部记录,希望对你们找那些快失传的资料时能有帮助。