这堆树莓派现在就在我脚边嗡嗡响,散热风扇吹出来的热风刚好能暖脚。四块板子,三块是闲鱼上收的二手货,一块是吃灰多年的3B+,加起来成本不到一千五。但就是这堆废铜烂铁,现在每天能稳定给我爬回来三万条体育场馆的预约数据,顶得上两个初级外包程序员坐在电脑前吭哧吭哧干八小时。
38岁了,还在搞这种“手工耿”式的硬件拼接,说出来有点滑稽。但这就是2022年的现实:团队散了,大钱没赚到,只剩下这副还能折腾的身体和一堆还没过时的技术肌肉记忆。疫情把很多事打回原形,也让我彻底明白,所谓“超级个体”,第一要义不是多能说,而是你的生产资料有多便宜、多可靠、多容易复制。人力是最贵的,也是最不可控的。代码和硬件不会跟你谈情绪、要加薪、突然请假。
具体到这套系统,核心痛点就一个:目标网站的反爬策略升级了,单个IP请求频率稍高就被封,用代理池成本又上去了。传统的单机多线程爬虫走到头了。我的解法粗暴但有效:物理分散。用四台树莓派组成一个小集群,每台板子独立运行一个爬虫实例,配置不同的爬取时间偏移量和请求头轮换策略。主控脚本用Ansible写,跑在我那台老MacBook上,负责统一分发任务列表和汇总数据。关键 trick 在于用 crontab 做精确到秒级的错峰调度,让四台设备的请求在目标网站的监控视角下,看起来像是来自四个不同地区、作息规律的“真实用户”。
最爽的时刻不是代码跑通,而是看着四块板子的绿色LED灯此起彼伏地闪烁,网络指示灯疯狂跳动。那种感觉,就像用几根木棍和橡皮筋组装出了一台能自动运转的机器。数据通过SFTP同步到NAS,再用一个简单的Python脚本清洗、去重、打上时间戳,最后导入Airtable。整个过程,从采集到结构化,没有一步需要我动手。我需要的只是每天早上去检查一下Airtable里新增的行数,以及哑铃撞击地面的声音。
对,哑铃。深夜写代码或者调试的时候,旁边就放着那对25公斤的哑铃。卡住了,思路僵了,就放下键盘去做几组硬拉或者推举。肌肉的酸胀感和多巴胺能强行冲刷掉技术阻塞带来的焦虑。身体是这台“超级个体”机器最重要的硬件,不能让它先于代码宕机。低成本自动化解决的是外部生产力,而健身,是我给自己这套系统打的内部补丁。
有人可能会说,这点数据量用云函数或者买现成的API服务也行。但那种“黑盒”让我不安。我需要确切地知道数据从哪个页面、经过哪条网络路径、以何种解析方式来到我手里。这种控制感,在经历了团队管理失控和项目交付的泥潭之后,变得比黄金还珍贵。这堆树莓派和它们执行的代码,是完全属于我的、可审计的、可任意拆解重组的生产力单元。它们发出的噪音和热量,比任何一句“我帮你搞定”的承诺都来得真实。
成本核算过:硬件一次性投入一千五,电费每月多二十块。替代的是之前每月至少六千的人力外包成本,或者价格更高、条款模糊的第三方数据服务。更重要的是,它7×24小时待命,没有情绪波动,迭代只需要我更新一下Git仓库里的脚本然后一键部署。这种自由,是2022年的我,能给自己最好的安全感。
哑铃又该加重量了。就像那套爬虫脚本,下个月可能又要因为网站前端改版而重写解析逻辑。但没关系,核心架构立住了:用极低的物理成本和清晰的代码逻辑,搭建一个能自我维护的系统。然后,把省下来的时间和精力,用在打磨真正能产生价值的产品逻辑上,或者,只是单纯地举起更重的铁。














