
Crawler est bloqué IP ?
Récemment, dans le code source du projet GitHub pick and pull, il y a toujours 403 qui bloquent le chemin. J'ai essayé diverses méthodes de camouflage de l'agent utilisateur, puis j'ai demandé à un ancien pilote de capturer des données, pour constater que le site a bien appris, et que l'adresse IP a été directement bloquée. Cette fois, vous avez besoin d'une adresse IP proxy pour agir comme un acteur de substitution, de sorte que le serveur pense que chaque visite est une personne différente.
Pourquoi utiliser un proxy résidentiel ? Les IP de la salle des serveurs sont obsolètes.
Beaucoup de débutants utilisent encore des IP gratuites et, par conséquent, il leur suffit d'escalader deux pages pour être bloqués. Aujourd'hui, le mécanisme anti-escalade du site web du voleur fonctionne bien, la section IP de la pièce est directement noire. L'agent résidentiel dynamique d'ipipgo avec une véritable IP domestique à large bande, comme une personne réelle surfant sur Internet, le taux de réussite est directement multiplié par deux.
importation de requêtes
from itertools import cycle
Liste des mandataires de ipipgo
proxies = [
'http://user:pass@gateway.ipipgo.net:3000',
'http://user:pass@gateway.ipipgo.net:3001',
'http://user:pass@gateway.ipipgo.net:3002'
]
proxy_pool = cycle(proxies)
url = 'https://github.com/search?q=python+spider'
for page in range(1,6) : proxy = next(proxy_pool)
proxy = next(proxy_pool)
try.
response = requests.get(
f "{url}&p={page}",
proxies={"http" : proxy, "https" : proxy}, timeout=10
timeout=10
)
print(f "Page {page} explorée avec succès")
except.
print("Changez d'IP et continuez à le faire !")
Trois astuces pour jouer aux pools proxy ipipgo
Premier mouvement :Créez un canal "crawler-only" en arrière-plan, choisissez le package Dynamic Residential Standard Edition, qui prend en charge le paiement à l'utilisation sans gaspillage. Il est recommandé d'ouvrir plus de 3 canaux en même temps, et de changer en quelques secondes lorsque vous rencontrez une interdiction.
Deuxième mouvement :Utilisez leur API pour obtenir l'IP de manière dynamique, n'oubliez pas de définir un délai de 3 secondes pour basculer automatiquement. Mesure de 50 fois par heure pour changer l'IP, fonctionnant pendant 12 heures sans déclencher l'anti-escalade.
| Type d'emballage | Scénarios applicables | Avantage tarifaire |
|---|---|---|
| Dynamique résidentielle (standard) | Projets de petite et moyenne envergure sur chenilles | 7,67 $/GB |
| Dynamic Residential (Entreprise) | système de recherche distribué | 9,47 Yuan/GB |
Troisième mouvement :Ajouter un mécanisme de réessai d'exception dans le code du crawler. Il est recommandé d'utiliser la bibliothèque de tentatives de python, de configurer 10 intervalles de tentatives, et de tester personnellement la capture de l'historique des étoiles de GitHub, qui est aussi stable qu'un vieux chien.
Fiche d'information sur les pièges communs des Blancs
Q :Pourquoi êtes-vous toujours bloqué alors que vous utilisez un proxy ?
A :La qualité du proxy n'est pas bonne, le proxy gratuit est souvent partagé par de nombreuses personnes. L'IP résidentielle statique exclusive d'ipipgo, 35 yuans par mois que, spécifiquement pour résoudre ce problème.
Q :Pourquoi ne puis-je pas augmenter la vitesse du crawler ?
A :N'utilisez pas un seul thread ! Effectuez des requêtes asynchrones avec aiohttp, ouvrez 20 connexions en même temps et n'oubliez pas d'utiliser un canal proxy différent pour chaque connexion.
Q :Que se passe-t-il si je dois traiter un CAPTCHA ?
A :Dans leur contexte d'ouverture du service de ligne dédiée TK, cette ligne est assortie d'une vérification humaine, adaptée à la saisie de projets open source en temps limité STAR une telle opération sordide.
Dites la vérité.
J'ai utilisé sept ou huit services proxy, et la chose la plus étonnante chez ipipgo est la fonction "IP warm-up". Lors du démarrage officiel du crawling avant la première IP proxy pour visiter quelques sites ordinaires, puis utiliser l'IP après la période d'observation du contrôle du vent du site, cette astuce fait monter en flèche mon taux de réussite de collecte de 47% à 89%.
Ils ont récemment mis au point une nouvelle fonctionnalité qui vous permet de voir l'emplacement géographique et les informations sur l'opérateur pour chaque IP directement dans le client. Lorsque j'ai découvert qu'une certaine IP britannique était en fait une ligne Vodafone, je l'ai utilisée pour explorer les données publiques de la société londonienne.

