
Formation pratique à l'utilisation d'Axios pour accrocher des proxies
Les crawlers devraient être engagés dans le vieux fer, maintenant de nombreux sites sont ajoutés au mécanisme anti-escalade, directement avec l'IP locale difficile juste quelques minutes d'être tiré noir. À l'heure actuelle, nous devons nous appuyer sur l'IP proxy pouridentité de rotationRécemment, un certain nombre de personnes m'ont demandé comment faire correspondre le proxy dans Axios en Node.js, aujourd'hui nous allons prendre les nôtres !ipipgocomme exemple pour donner aux gars un grand nombre de tutoriels pratiques.
Suite trois pièces préconfigurée
Assurez-vous d'abord d'avoir les trois sur votre ordinateur :
1. environnement Node.js (v14+ recommandé)
2) Installer la bibliothèque axios (npm install axios)
3. compte ipipgo (pour les nouveaux utilisateurs)Gratuit 200(Test IP)
Configuration de l'agent de base
La mise en place de proxies dans Axios est en fait extrêmement simple, regardez ce code :
const axios = require('axios') ;
const proxy = {
host : 'proxy.ipipgo.com', //adresse du serveur proxy
port : 8000, // port pour voir le type de paquet
auth : {
username : 'Votre compte', //s
password : 'Mot de passe'
}
} ;
axios.get('target url', { proxy })
.then(response => console.log('Success!'))
.catch(error => console.log('Rolled over:', error)) ;
prendre noteNe vous trompez pas de numéro de port.Les ports des différents paquets d'ipipgo ne sont pas les mêmes, ce qui peut être constaté dans le backend de l'utilisateur. Il est recommandé d'écrire la configuration du proxy dans un module séparé pour faciliter la maintenance ultérieure.
Jeu dynamique des pools d'agents
Single avec une IP fixe est facile à bloquer, cette fois il faut aller sur l'ipipgopool d'agents dynamiques. Utilisez leur API pour obtenir l'IP disponible en temps réel :
| Type d'emballage | Temps de survie IP | Scénarios applicables |
|---|---|---|
| version gratuite | 3 minutes. | Test/Acquisition basse fréquence |
| version de base | 10 minutes. | Saisie quotidienne des données |
| Édition Entreprise | 30 minutes. | Opérations à haute fréquence |
Vous pouvez changer dynamiquement dans le code comme suit :
async function getProxy(){
const {data} = await axios.get('https://api.ipipgo.com/getip') ;
return `http://${data.ip}:${data.port}` ;
}
// Mise à jour du proxy avant chaque requête
axios.interceptors.request.use(async config => {
config.proxy = await getProxy() ;
return config ; }) ; { config.proxy = await getProxy() ; }
}) ;
Traitement des scènes courantes de renversement
Quelques pièges courants rencontrés par les débutants :
1. délai de connexion
Vérifiez si l'adresse IP du proxy ne fonctionne pas, utilisez la fonctionInterface de détection de survieVérifier d'abord l'état de l'IP
2. renvoi de 407 erreurs
Mot de passe erroné, attention particulièreUtilisateurs de l'édition EnterprisePour établir une liste blanche d'adresses IP
3. lent comme un chien
Changement d'ipipgoLigne BGPC'est plus de trois fois plus rapide qu'une ligne normale.
Session pratique d'assurance qualité
Q : Que dois-je faire si mon IP proxy ne fonctionne pas ?
R : Il est recommandé d'utiliser la fonctionCommutation automatique des paquetsSi vous souhaitez l'utiliser, configurez l'intervalle de rafraîchissement dans le backend et ajoutez un mécanisme de tentative d'échec dans le code.
Q : Que se passe-t-il si j'ai besoin d'un proxy très anonyme ?
A : ipipgo'sPaquet EntrepriseAuthentification anonyme, aucun champ X-Forwarded-For n'est exposé dans l'en-tête de la requête.
Q : Comment gérer simultanément les requêtes HTTPS ?
A : Ajouter la configuration du proxyprotocole : "httpsNotez que le port correspondant doit être remplacé par 443.
Conseils pour l'optimisation des performances
1. utiliserRéutilisation du pool de connexionRéduction du temps d'échange (handshake)
2. fixer un délai raisonnable (5 secondes pour le délai de connexion et 30 secondes pour le délai de réponse)
3. en liaison avec ipipgo'sSélection géographiquepour sélectionner le nœud le plus proche du serveur cible
Enfin, n'oubliez pas d'ajouter le proxy ipipgo à votre code.User-AgentLe taux de réussite peut être amélioré de plus de 60%. Leur maison a récemment fait l'objet d'activités, le code secret [AXIOS666] peut être recueilli.Essai de 3 jours pour les entreprisesSi vous en avez besoin, dépêchez-vous.

