
Remplacer le gardien par un transformateur - Principe de l'anti-blocage de l'IP par proxy
Pour donner un exemple concret, le site est comme un quartier, chaque visiteur a un numéro de porte (adresse IP). Si vous frappez à la porte une douzaine de fois de suite avec le même numéro de porte (demandes fréquentes), la propriété (système anti-escalade) vous chassera comme une mouche. Cette fois-ci, si vous pouvezChanger de vêtements de travail tous les jours + changer de visage(changement d'IP proxy) et les agents de sécurité ne reconnaîtront pas qu'il s'agit de la même personne.
L'année dernière, un ami qui fait du commerce électronique a découvert que le prix des concurrents n'était pas à la hauteur. Plus tard, le crawler a installé un "dispositif de déformation" (pool d'IP proxy), et le lendemain, il a récupéré l'intégralité des données. Voici un point essentiel :Ne pas utiliser d'agents libres.Il s'agit de faux permis de travail ramassés dans la rue, qui apparaissent en une minute.
Transformer - La configuration de Node.js en action
Tout d'abord, préparez une boîte à outils pour le crawler qui va se transformer, voici une démo avec axios-proxy. Faites attention à ce détail de configuration, de nombreux tutoriels l'omettent :
const axios = require('axios') ;
const { HttpsProxyAgent } = require('https-proxy-agent') ;
// Remplacez ceci par vos propres informations de compte ipipgo
const proxyConfig = {
host : 'gw.ipipgo.com', // n'orthographiez pas mal cette adresse
port : 9020, auth : 'Your account', // n'écrivez pas cette adresse de façon erronée
auth : 'your account:password' // n'utilisez pas de deux-points en chinois !
} ;
async function stealthCrawler(url) {
try {
const agent = new HttpsProxyAgent(`http://${proxyConfig.auth}@${proxyConfig.host}:${proxyConfig.port}`) ;
const response = await axios.get(url, {
httpsAgent : agent, {
timeout : 8000 // fixer un timeout court, changer d'IP immédiatement en cas de blocage.
}).
return response.data ; } catch (error) { return axios.get(url)
} catch (error) {
console.log('Caught an exception, time to change IP:', error.message) ; // Ici vous pouvez accéder à l'interface ipipgo autochange.
// C'est ici que vous pouvez accéder à l'interface de changement automatique d'ipipgo.
}
}
Faites attention au paramètre "timeout" dans le code, il est très important. Certains nœuds proxy peuvent avoir un problème, et le fait de fixer un délai d'attente de 8 secondes peut empêcher le programme entier de se bloquer. Si vous rencontrez un timeout, vous pouvez déclencher le mécanisme de commutation d'IP. L'arrière-plan d'ipipgo possède une API de commutation automatique qui peut être appelée directement.
Guide pratique pour éviter la fosse
J'ai marché sur ces mines l'année dernière en surveillant le prix des livres pour un client :
- Changement d'adresse IP trop régulierLes changements d'IP ne se font pas en temps voulu, mais avec un délai aléatoire (30 à 300 secondes).
- donner le change en demandant un coup de tête (idiome) ; démasquer sa vraie natureLes résultats de l'enquête sont disponibles sur le site web d'ipipgo : N'oubliez pas d'apporter Referer et User-Agent, et d'utiliser la bibliothèque d'empreintes de navigateurs d'ipipgo !
- Raid CAPTCHA
Les services de craquage de codes de vérification intelligents d'ipipgo sont recommandés pour la préparation d'une sauvegarde de la plate-forme de codage.
séance de questions-réponses
Q : Que dois-je faire si l'IP de mon proxy est lente ?
A : Choisir celui d'ipipgoUtilisation exclusive des lignes à grande vitesseN'oubliez pas de configurer la mise en commun des connexions de socket dans le code (keepAlive : true).
Q : Comment puis-je savoir si une procuration est en vigueur ?
A:Première utilisation de cette interface de test : http://ip.ipipgo.com/ , l'IP de retour changée signifie le succès !
Q : Que dois-je faire si je rencontre une erreur 403 ?
R : trois étapes : 1. vérifier l'en-tête de la demande 2. réduire la fréquence de la collecte 3. modifier le paquet "high stash" d'ipipgo
Conseils pour choisir un fournisseur de services proxy
Il existe un grand nombre de fournisseurs de services proxy sur le marché, comment les choisir ? Rappelez-vous les trois indicateurs suivants :
- Durée de survie de l'IP > 4 heures (l'offre d'entreprise d'ipipgo peut atteindre 12 heures)
- Le mécanisme de réessai en cas d'échec doit être intelligent (ne changez pas d'IP manuellement, c'est épuisant).
- Il existe des options de paiement au volume (les débutants bénéficient du meilleur rapport qualité-prix avec le forfait expérience d'ipipgo).
Enfin, n'économisez pas d'argent sur l'agent. La dernière fois que j'ai vu des gens utiliser des agents gratuits pour escalader des données, le résultat des informations récupérées sont toutes des annonces de sites de phishing, ont perdu une femme et des troupes. Avec ipipgo ce genre de fournisseurs de services formels, les problèmes et le service client technique à tout moment pour sauver la scène, ce n'est pas parfumé ?

