上周六蹲某连锁咖啡的限定金属徽章,定了三个间隔两分钟的闹钟,提前十分钟就守在小程序页面,手指都按出屏幕印子了,结果倒计时一到,点进去直接跳“已售罄”。
转头刷二手平台,同款徽章挂着比官方价贵三倍的链接,还分分钟被人拍走。
真的气。
当时做互联网运维的朋友凑过来笑,说你以为你是在跟其他手速快的网友抢?你是在跟网络爬虫抢。
别把爬虫想成什么黑客专用的高深玩意儿
很多人一听到“网络爬虫”四个字,第一反应是躲在出租屋敲代码的黑客,偷偷爬别人的网站偷数据,搞点非法勾当。真不是。
说白了这东西就是个不知疲倦的小机器人,你平时手动刷网页,逐字逐句看内容、抄信息、记链接的过程,它能替你快速做完。你手动翻完十个网页要半小时,它可能0.1秒就把所有你需要的信息挑出来整理好。

说出来你可能不信,绝大多数人每天都在主动用爬虫的成果,只是自己不知道。你打开百度搜“南京颐和路的梧桐拍照点”,能跳出几百个网友分享的经验帖,不是百度的编辑手动把全互联网的网页翻了个遍存下来的,是爬虫天天在公开的互联网页面上逛,把每个页面的内容、关键词都存在自己的数据库里,等你搜的时候直接把匹配的结果递到你面前。
要是没有这些合规的爬虫,搜索引擎根本跑不起来,你想找个信息得挨个网站翻,效率低到离谱。
为什么你抢不过它?差的根本不是手速
说回抢徽章的事,我当时不服气,觉得自己手速不算慢,平时抢个外卖红包都能次次中,怎么就抢不到个徽章?
朋友给我算了笔账:人点屏幕的反应速度,从看到页面跳转到手指按下,最快也要0.3秒,之后还要等页面加载,选收货地址,确认订单,输支付密码,一套流程顺下来快的也要两三秒。
爬虫呢?它根本不需要盯着倒计时看,也不需要等页面加载出来才点按钮,提前就跟商家的后台服务器打好招呼,把所有要填的收货信息、联系方式、默认支付方式都存在配置文件里,只要系统一放库存,0.01秒就能把订单提交完。
你输在哪?输在你是人。

之前有个开淘宝店的朋友吐槽,说有次上了一千份9.9元的新品试用装,后台拉订单一看,七成都是爬虫提交的——收货地址全是分散在全国各地的快递驿站,连个具体门牌号都没有,明显是批量囤了要转卖赚差价的。好好的给普通用户的福利,全被这些不守规矩的爬虫截了胡,搁谁谁不火大?
最烦的就是这种把爬虫用在歪路上的人,本来大家靠手速抢限量品的小乐趣,全被搅没了。之前刷到有人说抢演唱会门票,自己提前半小时就蹲在页面上,结果点进去直接没票,后来看后台数据,近六成的票第一时间就被爬虫截走了,换你你不气?
不是所有爬虫都在钻空子
不过话说回来,总不能因为有人拿爬虫干坏事,就把这东西一棍子打死,说所有爬虫都是非法的吧?这就像因为有人拿菜刀切了人,就把全世界的菜刀都收了一样离谱。
判断一个爬虫是好是坏,根本不是看它会不会爬,是看它爬的时候有没有守规矩。什么叫守规矩?就是每个公开网站的管理员都会写一份叫“爬虫协议”的小告示,明明白白告诉来爬的小机器人:哪些公开区域你可以进,哪些涉及用户隐私的地方你别碰,你爬的时候别太猛,别把我本来就不宽的服务器带宽挤爆了,导致正常用户都刷不开页面。
照着这个告示来的爬虫,根本没什么问题。比如你平时看天气预报,能拿到逐小时的降雨提醒,不是气象局的工作人员天天蹲在各个气象站手动抄数据,是合规的爬虫把各个观测点的公开数据实时爬下来整理好的;比如你找租房的时候,能把各个平台的房源信息放在一起比价,不是你自己挨个平台翻三天记在Excel里,是合规的工具用爬虫把公开的房源信息拉出来,帮你省下来来回回切换APP的时间。
我自己去年就靠合规的爬虫省了好大的劲——当时想找南京城里拍梧桐最好看的几个点位,挨个翻网友的笔记,翻了两个小时,眼睛都看花了,要么就是点位过了季没叶子,要么就是周边堵得根本停不了车。后来朋友给我发了个整理好的表格,是用守规矩的爬虫把所有公开笔记里提到的点位、最佳拍照时间、甚至周边步行五分钟能到的咖啡店位置都整理好了,我当天照着表去拍,出片率比之前自己瞎找高了好几倍。
对吧?这东西本身就是个帮人省时间的工具,就像你上班骑的电动车,你要是遵守交通规则,靠它省半小时通勤时间,那就是好东西;你要是骑着它闯红灯抢道,那出事了也不能怪电动车本身。
上周我又蹲同个咖啡品牌的新徽章,这次没自己傻点屏幕,找之前那个做运维的朋友,帮我写了个守规矩的小爬虫——不碰用户隐私,不恶意挤服务器带宽,就安安静静在页面上等库存放出来。
最后还真抢到了。
拿到徽章挂在书包上的时候突然想,其实很多人对网络爬虫的偏见,本质上是因为没见过它守规矩的样子。你总把它想成躲在屏幕后面搞破坏的黑客,就永远看不到它能帮你省多少没必要的麻烦。