IPIPGO proxy ip PHP web crawler: tutoriales de rastreo de datos de sitios web PHP

PHP web crawler: tutoriales de rastreo de datos de sitios web PHP

PHP rastreador para lo que siempre se selló? Pruebe este truco espíritu de una gran cantidad de hermanos recientemente preguntó, escrito en PHP rastreador es siempre el sitio de destino bloqueado IP, enojado quiere romper el teclado. Este asunto es francamente sus huellas dactilares de red son demasiado obvias, hoy para enseñarle un truco - un proxy IP para jugar cubierta. Como jugar al escondite cambiar constantemente la ma...

PHP web crawler: tutoriales de rastreo de datos de sitios web PHP

¿Por qué se bloquea siempre el rastreador PHP? Prueba este truco

Recientemente, una gran cantidad de hermanos preguntó, escrito en PHP pequeño rastreador es siempre el sitio de destino bloqueado IP, enojado quiere romper el teclado. Este asunto es francamente demasiado obvio que sus huellas dactilares de red, hoy te enseñan un truco - con un proxy IP para jugar cubierta. Como jugar al escondite cambiar constantemente el chaleco, por lo que el sitio no puede coger su cuerpo real.

Hay mucho que decir sobre la elección de un tipo. No te metas con las herramientas.

El favorito de los novatos es file_get_contents, pero eso no es diferente de correr desnudo:


$html = file_get_contents("http://目标网站");

Los veteranos utilizan los trajes CURL como si llevaran una coraza:


$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://目标网站");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);

Las IP proxy son un salvavidas.

Añade estas líneas a la configuración de curl y cambiará instantáneamente:


curl_setopt($ch, CURLOPT_PROXY, 'Proxy IP:Puerto');
// Si se utiliza tunelización dinámica con ipipgo
curl_setopt($ch, CURLOPT_PROXY, 'http://用户名:密码@gateway.ipipgo.com:端口'); 

tenga en cuentaCambiar la IP para cada solicitud, la API de ipipgo obtiene la última IP en tiempo real, así:


$ip_list = json_decode(file_get_contents('https://api.ipipgo.com/get?num=5'));
$random_ip = $ip_list[rand(0,4)];

Caso práctico: coger un número limitado de mercancías

El año pasado, ayudé a mi amigo a escribir un script para agarrar zapatos, y estuve genial en 5 minutos sin usar un proxy. Luego usé el pool de IPs exclusivo de ipipgo, y el secreto del éxito está aquí:


function stealth_request($url){
    $ch = curl_init();
    // Obtener las IPs válidas del día desde ipipgo
    $proxy = get_ipipgo_proxy();
    curl_setopt($ch, CURLOPT_PROXY, $proxy);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10); // acortar el tiempo de espera
    curl_setopt($ch, CURLOPT_HTTPHEADER, [
        'User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:91.0) Gecko/20100101 Firefox/91.0'
    ]);
    return curl_exec($ch);
}

Guía para evitar escollos (recogida de piezas de recambio)

sintomático antídoto
Volver de repente al espacio en blanco Conmutación inmediata del siguiente nodo IP de ipipgo
Aparece CAPTCHA Reducir la frecuencia de las solicitudes + Cambiar el agente de usuario
Tiempo de espera de la conexión Compruebe si el puerto proxy se ha rellenado incorrectamente

Una visita obligada para los principiantes en GC

P: ¿No se puede utilizar el agente libre?
R: El agente libre de mercado 10 tienen 9 es el pozo, ya sea lento o temprano fracaso. ipipgo agente de nivel comercial ha dedicado el mantenimiento, la tasa de éxito medido de 98% o más.

P: ¿Cómo sé que el agente está en vigor?
R: Ponga una marca en el código:


curl_setopt($ch, CURLOPT_PROXY, $proxy);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
if(curl_exec($ch) === false) {
    echo "¡El proxy $proxy está colgado, pasa al siguiente!" ;
}

P: ¿Cómo resolver el problema cuando se encuentra con backcrawl sitio web?
R: Tres trucos: ① usar el proxy residencial de ipipgo ② hibernar aleatoriamente durante 0,5-3 segundos ③ mezclar cabecera UA móvil/PC.

Juego de actualización: Crawler distribuido

Para proyectos grandes recuerde usar multithreading + agent pools y configúrelo así:


// Obtener 200 IPs de ipipgo para Redis.
$ip_pool = get_ipipgo_batch(200);

// Obtener diferentes IPs para cada hilo
$worker->setProxy(array_pop($ip_pool)); 

Tenga en cuenta que la disponibilidad de IP debe supervisarse y que la sustitución de IP se activa automáticamente cuando cae por debajo de 90%.

Por último, para ser honesto, el proxy IP esta cosa un centavo un centavo. Desde el uso de ipipgo, ya no es necesario levantarse en medio de la noche para cambiar la IP, el sistema mantiene automáticamente la piscina, ahorrando tiempo suficiente para dormir un sueño profundo. Algunos hermanos dijeron caro, pero en comparación con las pérdidas causadas por el número bloqueado, esta inversión es realmente nada.

Este artículo fue publicado o recopilado originalmente por ipipgo.https://www.ipipgo.com/es/ipdaili/34314.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