1. 选择并购买菲律宾 VPS(确认为“原生 IP”)
- 步骤:在提供商控制面板选择位于 Philippines / Philippines datacenter 的机房(或明确标注 PH IP)。
- 验证:购买前用候选 IP 做 whois/ipinfo 查询,确认 geolocation 为 Philippines;优先选择支持浮动 IP 或 API 管理的厂商。
- 数量建议:用于轮换和并发的最少 3 台,规模根据目标站点和并发需求调整。
2. 初始系统配置与安全加固
- 登录:通过 SSH(ssh root@IP),首次登录后创建普通用户并禁止 root 远程登录。
- 更新:apt update && apt upgrade -y 或 yum update -y。
- 安全:设置强口令/密钥、安装 fail2ban、关闭不必要端口、配置 ufw/iptables 只允许需要的流量。
3. 安装代理服务(建议使用 3proxy 或 Squid)
- 安装:以 Ubuntu 为例,安装 Squid:apt install squid -y;或编译/安装 3proxy。
- 配置要点:设置监听端口(如 3128/1080),启用用户名密码验证,限制允许访问的客户端 IP(只允许你的爬虫服务器 IP)。
- 启动与开机自启:systemctl enable --now squid 或对应 3proxy 服务命令。
4. 配置 Squid/3proxy 基本示例
- Squid 最小配置片段:在 /etc/squid/squid.conf 中设置 http_port 3128、acl localnet src <你的爬虫 IP>/32、http_access allow localnet。添加 auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd。
- 3proxy 示例:设置代理用户、端口和允许来源,写入 3proxy.cfg 并启动。
- 测试:curl -x http://user:pass@VPS_IP:3128 https://ifconfig.co
5. 验证“菲律宾原生 IP”与地理位置
- 在线验证:使用 curl https://ipinfo.io/json 或 https://ifconfig.co/json 并检查 country/region。
- 本地检测:在 VPS 上运行 curl https://ipinfo.io/ip 确认返回 IP 与控制面板一致。
- 注意事项:部分云商的 IP 地理库有误,必要时联系厂商或使用多个第三方库(MaxMind、ipstack)二次确认。
6. 爬虫接入示例(Python requests)
- 单代理调用:proxies = {"http":"http://user:pass@VPS_IP:3128","https":"http://user:pass@VPS_IP:3128"};requests.get(url, proxies=proxies, timeout=10)。
- 并发与会话:使用 requests.Session() 复用连接;配合并发库(concurrent.futures 或 asyncio + aiohttp)控制并发数。
- 超时与重试:设置合理 timeout、重试机制与指数退避,避免被目标站点快速封禁。
7. IP 轮换策略:使用多 VPS 或浮动 IP
- 多 VPS:最简单可靠,用多台菲律宾 VPS 轮流作为代理,代码里维护代理池并周期性替换。
- 浮动 IP/API:优先使用提供商的浮动 IP 或 API 动态分配/重置 IP,实现在同一台机器上切换出口 IP。
- 轮换频率:根据目标站点反爬规则,建议逐步放大并发,避免短时间大量切换导致异常。
8. 反检测与爬虫礼仪(实践细节)
- 请求伪装:随机 User-Agent、Accept-Language、合理 Referer 和 Cookie 管理;避免固定特征。
- 节奏控制:引入随机等待(sleep),限制每 IP 的 QPS;使用任务队列均衡访问。
- CAPTCHA 与 JS:遇到验证码或动态渲染页面,优先使用正规服务(如 2captcha)或 headless 浏览器(Playwright/Chrome Headless)并在 VPS 上合理配置浏览器环境。
9. 日志、监控与异常处理
- 代理日志:配置 Squid/3proxy 日志,记录请求时间、目标 URL、响应码、来源代理。
- 监控:使用 Prometheus + Grafana 或简单的脚本监控带宽、连接数、错误率、CPU/内存。
- 自动化:当某台 VPS 错误率升高或被封,自动从代理池移除并通知运维。
10. 合法合规与风险提示
- 合规:始终遵守目标网站的 robots.txt、服务条款与当地法律。商业采集请签署授权或使用开放 API。
- 风险控制:不要用于入侵、DDOS 或违法活动;保留日志以备合规审计。
11. 常见问题:如何确认 IP 是“原生”而非代理或云 NAT?
- 问:如何确认 VPS IP 为原生公共 IP?
- 答:使用 ipinfo/maxmind 查询是否标识为 datacenter vs residential;检查 traceroute,看是否直接路由到供应商骨干;可联系供应商确认该 IP 是否为公网可反向路由的独立地址。
12. 常见问题:当 IP 被目标站点封禁我该如何快速恢复?
- 问:被封禁后怎么恢复最快?
- 答:立即从代理池中剔除被封 IP,替换为新的 VPS/浮动 IP;分析封禁原因(速率、UA、Referer)、调整爬虫节奏与伪装策略,必要时使用不同来源的菲律宾 VPS 以分散风险。
13. 常见问题:是否建议直接在 VPS 上运行 headless 浏览器?
- 问:在菲律宾 VPS 上运行 headless 浏览器合适吗?
- 答:可以,但要注意资源消耗与显卡/依赖问题。为稳定性建议单独部署少量浏览器节点,预先安装必要的依赖(libnss、fonts 等),并对每个浏览器实例做资源限制与监控。
来源:菲律宾vps原生ip在爬虫与数据采集中的正确使用流程