2025年年初的时候,我接到一个需要每周批量爬取科技行业资讯的项目,同事推荐了当时刚更新到v2.3版本的OpenClaw,说这套轻量化的爬虫工作流适配性很强,不用从零写代码就能快速搭建爬取流程,我当时想着跟着官方快速入门文档走应该不难,结果前后折腾了整整两个月,前前后后做坏了六次,现在回想起来每一次踩坑都有点哭笑不得,也攒了一堆能帮新手避坑的经验。第一次踩坑完全是自己粗心闹的,我直接在本地用了大半年的Python3.9环境里安装了OpenClaw,结果运行测试脚本的时候一直报“ModuleNotFoundError: No module named ‘httpx’”的错误,查了半天才发现2025版的OpenClaw已经把旧的requests依赖替换成了httpx,而且明确要求Python版本至少3.10,我当时光顾着看快速入门的第一步,压根没仔细看前置的环境要求,愣是折腾了三天才用conda搭好了3.10的虚拟环境,还把所有依赖都按官方列表重装了一遍,这是第一次彻底做坏整个工作流,当时离项目deadline只剩一周,急得我连喝了三杯冰美式才缓过来。第二次踩坑是在反爬适配上,好不容易把环境搞定,我写好抓取规则就直接跑了,结果爬了十几条资讯就被目标网站封了本地IP,我当时完全没加任何反爬伪装,用的还是OpenClaw默认的爬虫UA,目标网站的反爬机制一下就识别出来了,后来临时找了网上的免费代理池,结果没加健康检查脚本,一半的代理都是失效的,爬了一半就卡住了,还得手动挨个替换可用代理,折腾了快两天才搞定基础的UA伪装和代理池校验,后来我才知道可以用fake_useragent库随机生成浏览器UA,再加上1到3秒的随机延时,能大幅降低被封的概率。第三次踩坑栽在了数据清洗的细节上,终于能稳定爬取数据之后,我发现导出的资讯列表里少了好多有效链接,仔细查了才知道,我为了排除广告链接,写了个正则把所有带“advert”关键词的链接都过滤掉了,结果不少正规资讯网站的链接里都会带“?advert=123”这类广告追踪参数,硬生生把近三成的有效数据给删了,后来我改了过滤规则,只检查域名是否带有advert子域名,而不是链接里的query参数,才解决了这个问题,当天我还特意写了个小测试脚本,每次改完规则都先跑100条数据校验结果,再也没犯过这种低级错误。第四次踩坑是因为太想提高效率,把OpenClaw的并发数直接设成了50,结果运行没十分钟,公司的测试服务器CPU使用率就飙到了99%,运维小哥拿着监控截图过来找我的时候,我还在纳闷为什么进程一直卡着,后来查了官方文档才知道,OpenClaw的默认并发上限是20,而且针对中小型资讯网站,推荐的并发数在10到15之间,超过这个值不仅会占用太多服务器资源,还更容易触发目标网站的反爬机制,改成12之后,爬取速度不仅没降多少,还稳定了很多。第五次踩坑是格式没对齐需求,好不容易把爬取和清洗都搞定,我直接导出了OpenClaw默认的JSON格式,结果客户要的是能直接导入Excel的CSV文件,我临时用在线工具转格式的时候,还丢了部分带特殊字符的字段,又得重新爬取一遍,后来我每次在工作流里加了导出前的格式校验脚本,不仅会自动匹配客户要求的字段,还能一键把数据转成CSV或者Excel格式,省了好多额外的工作量。第六次踩坑是最折腾的,本来前五次的坑都踩完之后,这套工作流已经能稳定跑三天了,结果某天突然报错中断,我当时没开全链路日志,控制台只弹出了一个模糊的“DOM元素未找到”的报错,根本不知道是哪一步出了问题,翻遍了控制台的日志也找不到具体的出错位置,熬了整整一个通宵才把OpenClaw的日志模块加上,一步步排查出来是目标网站改版了,把原来放在