网页采集如何避免被封
被封不是运气差——是个信号。反爬系统会给每个请求在 IP 信誉、请求频率、请求头和行为上打分。把暴露你的信号一一修掉,封禁率会大幅下降。下面这份实操清单,大致按影响力排序。
被封不是运气差——是个信号。反爬系统会给每个请求在 IP 信誉、请求频率、请求头和行为上打分。把暴露你的信号一一修掉,封禁率会大幅下降。下面这份实操清单,大致按影响力排序。
最大的单一信号是你 IP 的 ASN。机房网段在每个反爬黑名单上;来自真实 ISP 的住宅 IP 带着普通用户信誉。如果一个站点不管你多小心限速都秒封你,那问题出在 IP 类型上——换住宅。
一个 IP 发上千个请求,是最明显的机器人特征。广度爬取时每请求轮换新 IP;需要连续性的流程(登录、购物车、翻页)则保持粘性 IP。在 Roam 上两者都由用户名控制:随机 -session-<id> 轮换,固定则粘住。
真人不会像节拍器一样每秒发 20 个请求。加延迟、把延迟随机化、限制对每个目标的并发。遵守 robots.txt 和公布的速率限制——既是礼貌,也是为了不被封。
库的默认 User-Agent 等于喊"我是机器人"。发一个真实浏览器 User-Agent、一套一致的 Accept/Accept-Language 头,并让它们和 IP 所在国家一致。别拿一个日本 IP 配纯英文的请求头。
有些目标需要真实浏览器(Playwright、Puppeteer)来渲染 JS 并通过指纹检查。把无头或指纹浏览器与住宅代理搭配,给每个浏览器配置一个专属粘性 IP,让 IP 和指纹保持一致。