
Cuando los cazatalentos se encuentran con los rastreadores de Python
Hace poco hablé con unos cuantos veteranos de Recursos Humanos y descubrí que su mayor quebradero de cabeza es encontrar currículos. Un hermano pequeño de un cazatalentos se quejaba de que la eficacia de recoger datos manualmente con LinkedIn ahora es más lenta que un caracol. Esto no es así, de la noche a la mañana le di todo un script en Python, con elipipgode servicios de agencia que saca la eficacia de la caja. Hoy vamos a desmontar y desmenuzar este combo para que hasta el más pequeño pueda jugar con él.
Las IP proxy son un salvavidas para los rastreadores
LinkedIn的反爬机制比安检还严,用自家IP硬刚?分分钟给你封号没商量。这里教你们个骚操作:IPs proxy para rastreadoresEl principio es como jugar a un juego de la gallina para cambiar la piel, cada solicitud para cambiar la dirección IP. El principio es como jugar a un juego de pollo para cambiar la piel, cada solicitud para cambiar la dirección IP, el servidor no puede saber si se trata de una persona o una máquina.
importar peticiones
from itertools import ciclo
Grupo de proxies del backend ipipgo
proxies = [
"http://user:pass@gateway.ipipgo.com:30001",
"http://user:pass@gateway.ipipgo.com:30002".
... Preparar al menos 20 IPs
]
proxy_pool = cycle(proxies)
para página en rango(1,50): proxy_actual = siguiente(proxy_pool)
proxy_actual = siguiente(proxy_pool)
proxy_actual = siguiente(proxy_pool)
respuesta = requests.get(
url="https://www.linkedin.com/jobs/search/",
url="", proxies={"http": proxy_actual},
headers={"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"}
)
print(f "¡Ha llegado la página {page} de datos!")
except.
print("¡Esta IP está capturada, pase a la siguiente!")
Tres reglas de hierro para elegir una IP proxy
Hay todo tipo de servicios proxy en el mercado, pero tienes que reconocer estos tres para LinkedIn:
1. Prioridad IP residencialIP de la sala del servidor es como llevar un mono de trabajo en un club nocturno, demasiado llamativo. Se recomienda utilizar el proxy dinámico residencial de ipipgo, ¡el verdadero entorno de red doméstico!
2. El control de la concurrencia debe ser robustoNo envíes 10 solicitudes por segundo como si fuera un sarpullido, ¡utiliza la API de programación inteligente de ipipgo para controlar la frecuencia automáticamente!
3. Exactitud geográfica: ¿Quieres robar ingenieros de Silicon Valley? Recuerda elegir un nodo IP en la costa oeste de EE.UU.
Guía práctica para evitar el pozo
La semana pasada para ayudar a una empresa de comercio electrónico para capturar los datos de correos, escribieron su propio guión siempre está prohibido. más tarde encontró tres lesiones mortales:
| cuestiones | prescripción |
|---|---|
| User-Agent es fijo | Generado aleatoriamente con la biblioteca fake_useragent |
| Solicitudes demasiado espaciadas | Añade random.uniform(1,3) para crear la ilusión de manipulación humana |
| Estado de conexión anormal | Con la función de retención de sesión de ipipgo |
Old Driver QA Time
P: ¿Qué debo hacer si de repente me quedo sin datos mientras rastreo?
R: 80% es provocado por el control de viento, inmediatamente hacer tres cosas: 1. vaciar las cookies 2. reemplazar ipipgo IP 3. reducir la frecuencia de las solicitudes a 3 veces por minuto
P: ¿Funcionan los proxies gratuitos?
R: ¡Despierta hermano! Los pools de IPs gratuitas son como los baños públicos, cualquiera que los haya usado puede estar seguro? Como se ha probado antes, la tasa de disponibilidad de IP libre es inferior a 10%, y la tasa de supervivencia de ipipgo puede llegar a más de 98%.
P: ¿Cuántas IP se necesitan para ser suficientes?
A:Según nuestra prueba de estrés, si hay 1.000 peticiones por hora, es más seguro preparar 50 IPs para rotación. El paquete de ipipgo tiene un pool de IPs dinámico, que repone automáticamente nuevas IPs.
Programa de captura mejorado
La solución definitiva para los alcanzadores:
1. Creación de un rastreador distribuido con el framework Scrapy
2. Acceso a la API de ipipgo para obtener las últimas IPs proxy.
3. Despliegue en servidores en la nube y ejecución periódica
4. Almacenamiento automático de datos en la base de datos MongoDB
Después de que todo el conjunto de procesos se ejecuta a través de, establecer un robot WeChat, todos los días antes de ir a trabajar para enviar automáticamente el informe a su teléfono móvil, gorgeous ~.
Para concluir, la recogida de datos es como una guerra de guerrillas.rápido, preciso y estableNuestro equipo ha estado probando el servicio proxy de ipipgo durante tres meses y la estabilidad es realmente algo a superar. Especialmente suIP residencial dinámicaLos datos de LinkedIn se puede acceder de forma local, y el sistema anti-escalada no puede atraparlo en absoluto. Si tiene que ir a la página web oficial para echar un vistazo, los nuevos usuarios para enviar 1G tráfico de prueba, suficiente para que usted pueda probar las funciones básicas.

