
¡Enseña a usar PHP para capturar datos, proxy IP así que usa a estable!
El hierro viejo dedicado a la recopilación de datos debe entender, directamente con su propio servidor IP a woolgathering sitio, minutos para ser bloqueado. La semana pasada había un amigo haciendo el comercio electrónico, escribió su propio script de rastreo de repente falló, una comprobación de los registros sólo para encontrar que la IP era el sitio de destino sacó el negro. Esta vez tenemos que salir de nuestro salvador - IP proxy.
Esto es imprescindible.ipipgoEl servicio de proxy de la familia, su grupo de IP es lo suficientemente grande, cada solicitud se puede cambiar a una IP de exportación diferente. He probado a mí mismo, la recogida continua de una plataforma de comercio electrónico durante 3 horas sin ser interceptado, la tasa de éxito se mantiene en 95% o más.
PHP Crawl Triple Axe
Empecemos con la comida dura y veamos cómo funciona el código directamente. Al inicializar la petición con CURL, céntrate en estos dos ajustes de parámetros:
$ch = curl_init(); curl_setopt($ch, CURLOPT_PROXY, 'proxy IP:puerto'); // rellene aquí la dirección proporcionada por ipipgo curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'Account:Password'); //información de autenticación generada por el backend de ipipgo
Muchos novatos caen presa de la configuración del tiempo de espera, que se recomienda paraEl tiempo de espera de conexión está fijado en 8 segundos, el tiempo de espera de transmisión está fijado en 25 segundos.. Cuando te encuentres con un sitio que responde con lentitud, esta configuración puede evitar eficazmente que el script se atasque.
Guía práctica de la PI por poderes para evitar escollos
He aquí algunas lecciones de sangre:
| bache | prescripción |
|---|---|
| Fallo IP repentino | Utiliza la función de cambio automático de ipipgo |
| Informes de errores de sitios web HTTPS | Compruebe si el proxy admite el protocolo SSL |
| Devuelve datos vacíos | Añadir la cabecera de petición User-Agent |
Nota especial: Cuando utilice el proxy de ipipgo, recuerde poner el iconoTiempo de supervivencia IPPóngalo en modo dinámico para que cambie automáticamente de IP en cada petición, y está personalmente probado para tener el mejor efecto antibloqueo.
Consejos para optimizar el guión de captura
1. Los retrasos aleatorios son importantes, no utilice un tiempo de SLEEP fijo. Se recomienda parar aleatoriamente entre 1-3 segundos, para que se parezca más al funcionamiento de una persona real.
2. No se asuste cuando se encuentre con CAPTCHA, el exclusivo paquete IP de ipipgo soporta el servicio de codificación automática, que puede ahorrarle mucho trabajo.
3. Recuerde hacerlo cuando almacene los resultados en la base de datos.Filtrado de datos duplicados. Se recomienda comparar el contenido con hashes MD5, este método es el más eficiente.
Preguntas frecuentes QA
P: ¿Qué debo hacer si mi IP proxy va lenta?
R: Elija la línea BGP de ipipgo, ellos tienen nodos backbone triple play, la latencia medida puede ser presionada dentro de los 200ms.
P:¿Cómo puedo seguir cosechando si interrumpo en mitad de la cosecha?
R: Añada una función de punto de interrupción en el script para registrar la última posición de adquisición. La API de ipipgo permite consultar el registro de uso por ID de tarea, lo que resulta conveniente para recuperar el progreso de adquisición anterior.
P: ¿Cómo lo consigo si necesito una adquisición multihilo?
R: Utilice pcntl_fork para crear subprocesos, a cada proceso se le asigna una IP proxy ipipgo diferente. preste atención a controlar el número de concurrencia, no ejecute la CPU del servidor frito.
Por último dar un consejo: no seas codicioso y barato con agentes libres, los datos de luz está mal, cuenta pesada está bloqueado. Como los proveedores de servicios regulares ipipgo, aunque cuesta un poco de plata, pero la calidad de los datos está garantizada, hay problemas con el apoyo de servicio al cliente técnico en cualquier momento, esta es la manera correcta de participar en la colección.

