
Tout d'abord, pourquoi votre crawler est-il toujours attiré par le site ?
Les confrères qui se sont engagés dans la collecte de données ont dû rencontrer cette situation : il suffit de lancer un bon programme d'exploration et, soudain, le site Web de la Commission européenne se met à clignoter.403 Refus d'accèsou un tas de CAPTCHAs. En clair, votre IP est ciblée par le site web. Les crawlers ordinaires dont l'IP est fixe font des demandes frénétiques, un peu comme s'ils tenaient un haut-parleur devant les maisons des gens en criant "Je veux voler des données", et ne bloquent pas, vous bloquez qui ?
C'est ici que nous faisons appel à nos sauveurs -IP proxyL'adresse IP est modifiée à chaque fois qu'une demande est faite par l'intermédiaire de services professionnels tels que ipipgo. Grâce à ipipgo, ce type de services professionnels, chaque demande pour une adresse IP différente, équivaut à ce que le crawler porte une myriade de "masques". Par exemple, les 1 000 demandes initiales en une heure avec 1 IP sont maintenant remplacées par 100 IP, chaque IP n'étant envoyée que 10 fois, le système de contrôle du vent du site ne peut pas détecter d'anomalies.
Deuxièmement, comment construire un crawler Laravel
Ne nous précipitons pas pour écrire du code, nous devons préparer notre matériel :
- Installation de PHP 7.4+ et de Composer
- Créer un nouveau projet Laravel :
composer créer un projet laravel/laravel crawler - Installer Goutte, l'outil de crawler :
composer require fabpot/goutte
Le code de base se compose en réalité de trois éléments (ne vous laissez pas effrayer par le jargon technique) :
// Créer un nouveau CrawlCommand.php dans app/Console/Commandes.
public function handle()
{
$proxy = 'http://用户名:密码@gateway.ipipgo.com:9020' ; // format de proxy propriétaire d'ipipgo
$goutte = nouveau Client() ;
$goutte->setClient(new HttpClient(['proxy' => $proxy])) ;
// Logique de capture spécifique...
}
Troisièmement, les compétences pratiques de l'IP proxy
Il ne suffit pas d'être capable d'utiliser des proxies, cestechnique de sauvetageDoit être maîtrisé :
| nid-de-poule | prescription |
|---|---|
| Défaillance soudaine de l'IP | Utilisez l'API de commutation automatique d'ipipgo pour basculer vers une nouvelle IP en quelques secondes en cas d'échec. |
| Fréquence excessive des demandes | Délai aléatoire de 2 à 8 secondes pour simuler l'opération d'une personne réelle |
| Rencontrer le CAPTCHA | Accès au service de reconnaissance CAPTCHA d'ipipgo |
Rappel spécial : n'enregistrez pas le délai d'attente ! Il est recommandé de fixer le délai de connexion à 5 secondes et le délai de requête à 30 secondes afin d'éviter qu'une certaine IP ne bloque l'ensemble du programme.
IV. le temps consacré à l'assurance qualité : un must pour les novices
Q : Que dois-je faire si mon adresse IP proxy ne se connecte pas souvent ?
R : 80% d'entre eux utilisent des proxies de mauvaise qualité. Recommandez ipipgo'sPaquet d'agents de niveau professionnelLes adresses IP de leur maison sont dotées d'un système de détection de survie, et le taux de réussite de la connexion mesuré peut atteindre 99,2%.
Q : Comment puis-je interrompre la vitesse de collecte trop lente ?
R : Deux astuces : ① utiliser ipipgo'spool d'agents multithread② Activer la connexion persistante HTTP pour réduire le nombre de handshakes TCP.
Q : Comment puis-je savoir si une procuration est anonyme ?
R : Visitez http://httpbin.org/ip, s'il renvoie une IP proxy au lieu de votre IP réelle, cela signifie que le proxy high stash d'ipipgo est en vigueur.
V. Jeu de mise à niveau : les chenilles distribuées
Lorsque la solution autonome ne tient pas la route, il est temps de passer à l'étape suivante, à savoir la mise en place d'un système de gestion de l'information.architecture distribuéeEn haut. Utiliser Redis pour faire la file d'attente des tâches, plusieurs serveurs fonctionnant en même temps, chaque machine d'ipipgo demandant un segment IP différent. Ce n'est pas un rêve de collecter des millions de données par jour, et il n'est pas facile d'être ciblé par des stratégies anti-crawling.
Un dernier mot d'avertissement : ne choisissez pas un service de procuration au rabais ! Certains agents gratuitsVol du contenu des réponsesouEnregistrer les données de votre demandeLa première chose à faire est d'utiliser un fournisseur de services régulier comme ipipgo. En utilisant ipipgo, ce type de fournisseur de services formel, la sécurité des données est garantie, et en cas de problème, vous pouvez également trouver un service technique à la clientèle pour un traitement en temps réel.

