采集脚本跑一阵就被拦,通常是请求频率、请求特征与渲染环境几处信号叠在一起。反爬在升级,靠固定参数维持的脚本会反复失效,更稳的方向是守住 robots、控制频率、只采公开数据。
本地跑通的采集脚本,放到线上跑一阵就断了。返回 403、被跳到验证页,或者干脆拿到一段空的 HTML,这几种情况背后通常是同一件事:站点的防护判定这次访问不像普通用户。

脚本为什么会一路失效
反爬不是某一项技术,而是几层判定叠在一起。最先撞上的往往是频率:同一个 IP 在短时间里对同一条路径密集发请求,间隔还整整齐齐,这几乎是最容易识别的模式,触发之后先是限速,严重了直接封 IP。
再往上一层是身份。请求头里带着脚本的默认 UA、缺少浏览器常规会带的字段,或者声称自己是 Chrome 却拿不出对应的 JS 执行环境和渲染结果,都会被记一笔。搭在 CDN 后面的站点还会额外加一层 JavaScript 挑战:页面先返回一段需要执行才能拿到内容的代码,纯请求库拿不到执行结果,就只能停在门外。
行为层面的特征同样明显。真人访问会加载图片和 CSS、会滚动、会停顿,脚本往往只取 HTML 就撤。站点把这几类信号合起来打分,低于阈值就弹验证码。
这套机制还在往前走。防护方每次调整判定逻辑,靠固定参数和固定节奏吃饭的脚本就要重写一轮;参数补得越多,脚本越臃肿,真实度反而越难保证。指望一套脚本通吃所有站点,这个前提本身就不成立。
绕过去为什么不是选项
网上关于绕过防护的教程很多,但这件事的性质不是技术选择,而是违约。站点的服务条款基本都写明禁止规避其安全措施和访问限制,技术做得到,不代表这么做站得住。
代价也是实打实的。账号与 IP 被封是最直接的一种结果;绕过技术措施获取数据,在不少司法辖区可能构成违法;而靠非正常手段拿回来的数据,来源和完整性都没法追溯,用在下游决策上风险更大。把技术问题换成合规问题,这笔账不划算。
合规采集的几条底线
先看 robots 协议和使用条款。robots.txt 写明了哪些路径允许抓取,这不是参考意见,而是站点表达出来的意愿;使用条款里通常还有更细的数据使用限制。
有官方 API 就优先用官方 API。数据结构清晰、有文档、有配额说明,也不会因为前端改版而集体失效。配额不够,可以调低采集计划,或者走商务渠道申请更高额度,比绕限制稳妥。
频率要控住。站点允许抓取,不等于允许打满带宽。加间隔、限制单位时间内的请求数、避开站点高峰,这几件事做到位,多数摩擦根本不会发生。
只采公开数据,不碰个人信息。需要登录才能看的内容不采,站点明确标注禁止抓取的数据不采。个人信息受法律严格保护,采集它需要明确的法律依据和用户同意,这从来不是技术问题。
确实需要渲染后的内容怎么办
有些页面的内容要执行 JS 才出得来,光靠请求库拿不到。这种情况下可以用浏览器自动化工具打开页面、读取渲染后的 DOM,同时守住几件事:按正常节奏访问,不要同时开几十个实例压向同一个站点,站点明确禁止自动化访问就不要用自动化方式访问。
这里有一条容易被混淆的边界。多环境工具的正当用途是让多个合法账号各自独立,比如团队同时登录多个客户的后台看数据;而不是伪装成大量互不相同的用户去抓同一个站点。前者是账号管理,后者是规避站点的访问限制,两者不是一回事。
常见问题
换 IP 只动到了判定里的一项。请求头、频率、指纹特征都没变,很快又会撞上同一堵墙,而且 IP 高频更换本身就是异常特征。
API 配额小的时候,按配额压低采集量,或者走商务渠道申请更高额度。这不比绕限制慢多少,数据来源却是干净的。
公开可见和可以自由使用是两件事。还要看站点条款、数据的著作权状态和后续用途,涉及个人信息的格外要谨慎。
收尾
采集被拦,说明站点已经判断出访问者不像普通用户。可行的方向就两个:让访问行为回到正常范围,或者改走官方接口。至于绕过防护,看着是省事的那条路,实际上是把风险从技术层挪到了合规层。

