IPIPGO proxy ip PHP网络爬虫代理:使用PHP语言集成代理IP的实战代码

PHP网络爬虫代理:使用PHP语言集成代理IP的实战代码

手把手教你把ipipgo代理塞进PHP爬虫 搞爬虫的都知道,没代理IP就像裸奔上网。用PHP做采集的话,给curl加个外套就能接上ipipgo的代理服务。先整个最简单的配置: $ch = curl_init(); curl_setopt($ch, CURLOP…

PHP网络爬虫代理:使用PHP语言集成代理IP的实战代码

手把手教你把ipipgo代理塞进PHP爬虫

搞爬虫的都知道,没代理IP就像裸奔上网。用PHP做采集的话,给curl加个外套就能接上ipipgo的代理服务。先整个最简单的配置:


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, '目标网址');
curl_setopt($ch, CURLOPT_PROXY, '代理IP:端口'); //比如121.40.88.66:8000
curl_setopt($ch, CURLOPT_PROXYUSERPWD, '账号:密码');
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
$result = curl_exec($ch);

He aquí un escollo con el que hay que tener cuidado:别把代理IP写死在代码里。建议用ipipgo的API动态获取IP池,他们家的API返回格式是json,用json_decode处理特别方便。

代理IP的智能切换套路

实战中发现,很多新手容易卡在代理失效的问题上。教你们个绝招:用try…catch包住curl_exec,当捕获到超时或403错误时,立马换新代理。


function getProxy(){
    //调用ipipgo的API获取新IP
    $api = 'https://api.ipipgo.com/get?type=dynamic';
    $ipData = json_decode(file_get_contents($api),true);
    return $ipData['proxy'];
}

do {
    try {
        $proxy = getProxy();
        //...执行curl请求...
        break;
    } catch(Exception $e) {
        //记录失败日志
        continue;
    }
} while(重试次数<3);

必须掌握的防封技巧

光换IP还不够,得让爬虫看起来像真人操作。这几个参数建议加上:


curl_setopt($ch, CURLOPT_ENCODING, 'gzip'); //解压缩
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Accept-Language: zh-CN,zh;q=0.9',
    'User-Agent: Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36...'
]);
curl_setopt($ch, CURLOPT_REFERER, 'https://www.google.com/'); 
curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt'); //带cookie访问

ipipgo的动态住宅代理有个隐藏功能:设置session_id可以让同一个IP保持会话。这对需要登录的网站特别有用,在代理地址后面加session=自定义字符串就行。

QA常见翻车现场

Síntomas del problema método resolver un problema
总是连接超时 检查代理类型是否选错,动态代理要用_http类型
遇到Cloudflare验证 换ipipgo的静态住宅代理+降低请求频率
Volver a la página en blanco 加上CURLOPT_FOLLOWLOCATION跟踪重定向
Cuenta prohibida 开启代理自动切换+设置随机请求间隔

Hay una forma de elegir un paquete

根据实测经验给建议:

  • 普通采集用Residencial dinámico (estándar),每小时自动换IP
  • 需要固定IP的场景(比如API调用)选Viviendas estáticas
  • 企业级大规模采集直接上Residencial dinámico (empresa),支持并发数翻倍

最后提醒:用ipipgo的时候记得开他们的Detección de Supervivencia IP功能,能提前筛掉失效的代理。具体是在请求代理时加&check=1参数,返回状态码200的才能用。

Este artículo fue publicado o recopilado originalmente por ipipgo.https://www.ipipgo.com/es/ipdaili/46932.html

escenario empresarial

Descubra más soluciones de servicios profesionales

💡 Haz clic en el botón para obtener más detalles sobre los servicios profesionales

Nueva oferta de fin de año de IPs dinámicas 10W+ de EE.UU.

Profesional extranjero proxy ip proveedor de servicios-IPIPGO

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Póngase en contacto con nosotros

Póngase en contacto con nosotros

13260757327

Consulta en línea. Chat QQ

Correo electrónico: hai.liu@xiaoxitech.com

Horario de trabajo: de lunes a viernes, de 9:30 a 18:30, días festivos libres
Seguir WeChat
Síguenos en WeChat

Síguenos en WeChat

Volver arriba
es_ESEspañol