
Tout d'abord, les personnes de race blanche peuvent également comprendre la posture introductive du crawler
Vous voulez extraire des données de pages web, mais vous avez peur d'être bloqué ? Souvenez-vous de cette premièreTriangle d'orLa première chose à faire est d'utiliser la bibliothèque requests pour envoyer des requêtes, XPath pour trouver l'emplacement et les expressions régulières pour récupérer les détails. Ne vous laissez pas intimider par la terminologie, prenons l'exemple de la surveillance des prix d'un site de commerce électronique, en supposant que vous souhaitiez connaître le prix des téléphones portables, avec requests.get () vous pouvez obtenir le code source de la page.
en ce momentPool d'IP proxy pour ipipgoC'est là qu'il intervient. Pourquoi ? La même IP est sollicitée à tout va, si le site ne vous bloque pas, qui le fera ? Ajoutez quelques lignes de paramètres proxy dans le code, faites tourner l'adresse IP fournie par ipipgo, comme au jeu du "visage", pour que le site pense que c'est à chaque fois une personne différente qui le visite.
Deuxièmement, XPath pour trouver les données du tiroir est également simple
Imaginez la structure d'une page web comme une garde-robe, et XPath est le langage de navigation qui indique à l'application "le deuxième vêtement à gauche dans le troisième tiroir". Faites un clic droit sur un élément dans les outils de développement Chrome (F12) et sélectionnez Copier XPath pour obtenir un chemin d'accès direct à l'emplacement. Par exemple, le prix d'un téléphone portable peut être de l'ordre de//div[@class='price-box']/span[1]Ce poste.
| Scénarios de positionnement courants | Rédaction XPath |
|---|---|
| Recherche par classe | //div[@class='product'] |
| Par le contenu du texte | //a[contains(text(),'Buy Now')] |
| imbrication multicouche | //ul[@id='list']/li[3]/div |
III. les expressions régulières : le couteau suisse du nettoyage des données
Lorsque les données web sont désordonnées, les habitués sont votre filtre. Par exemple, si vous trouvez un prix qui dit "à partir de 3 299 ¥", utilisez la fonctiond+,d+Vous pouvez alors extraire 3299. Rappelez-vous les trois signes cardinaux :. ? (n'importe quel caractère)etd+ (nombre)etw+ (alphanumérique).
Cas pratique : Traitement des numéros de téléphone comportant des impuretés
Texte original : Numéro de téléphone du service clientèle400-1234-5678(jours ouvrables)
Formule normale :d{3}-d{4}-d{4}
Quatrièmement, la manière correcte d'ouvrir l'IP proxy
Je l'ai vu à 4 heures du matin.Erreur de connexionAh oui ? C'est ce qui arrive quand on n'utilise pas un bon proxy. Ajouter le proxy d'ipipgo à votre code, c'est comme mettre une cape et un poignard sur un crawler :
proxies = {
'http' : 'http://username:password@ipipgo-proxy-server:port',
'https' : 'https://username:password@ipipgo-proxy-server:port'
}
response = requests.get(url, proxies=proxies)
C'est là que le bât blesse :Sélection aléatoire d'IP par demandeetCommutation automatique anormaleetVérification de la disponibilité de l'IP à un moment donnéL'API ipipgo renvoie directement une liste des serveurs mandataires disponibles, ce qui est beaucoup moins fastidieux que de les gérer soi-même.
V. Guide pour éviter le gouffre : 5 erreurs courantes commises par les novices
1. a oublié de définir l'en-tête de la requête et a été intercepté comme un robot
2. un seul balayage d'IP, 10 minutes pour obtenir un gros paquet de bannissements !
3. ne pas gérer le chargement asynchrone des pages et attraper la solitude
4. les règles sont trop rigides, la page web ne fonctionnera pas si vous changez de style.
5. pas de gestion des exceptions, le programme s'arrête au milieu de la nuit
VI. le temps consacré à l'assurance qualité : vous voudrez poser des questions à ce sujet !
Q : Que dois-je faire si XPath ne fonctionne pas dans la révision du site web ?
R : Utilisez davantage de chemins relatifs et de correspondances floues, par exemple//[contains(@class,'price')]Plus résistantes au changement que les classes fixes
Q : Comment les agents d'ipipgo sont-ils facturés ?
A : Leurs presses familialesUtilisation réelleContrairement à d'autres plateformes où vous devez acheter un package, le service est payant. Les nouveaux utilisateurs bénéficient d'un bonus de 5 $, suffisant pour tester des milliers de demandes !
Q : Comment casser le CAPTCHA lorsque je le rencontre ?
R : Réduire la fréquence des requêtes + changer d'UA + utiliser le set de trois pièces du proxy d'ipipgo. Il est recommandé d'accéder à la plate-forme de codes pour les codes de vérification les plus difficiles à obtenir.
VII. dernier conseil : ne pas être imprudent
Les chenilles sont des batailles persistantes, et il s'agit de savoir qui vivra le plus longtemps. Faites bien ces trois choses :
1. sommeil aléatoire par demande (1-3 secondes)
2. préparation de trois programmes d'analyse pour des projets importants
3. utilisation de l'ipipgopool IP exclusifFaire le programme de liaison
N'oubliez pas que l'exploration durable est la voie à suivre, ne perdez pas une petite somme d'argent pour économiser sur les frais d'agence.

