
Vous apprendre à utiliser le langage R pour accrocher des proxy qui collectent des données.
Les crawlers engagés dans l'ancien réseau de fer ont dû rencontrer l'IP a été bloqué les mauvaises choses, cette fois l'IP proxy est votre paille de sauvetage. Aujourd'hui, comment utiliser la configuration du service proxy ipipgo en langage R, afin que le travail du crawler soit aussi stable que le vieux chien.
Qu'est-ce qui ne va pas avec les IP proxy ?
En bref.L'intermédiaire obtient les données pour vous.. Par exemple, si vous voulez attraper un certain site web, l'utilisation directe de votre propre IP est facile à identifier comme un crawler. Après avoir utilisé l'IP proxy d'ipipgo, le site web voit l'IP du serveur proxy, même s'il est bloqué, une IP différente pourra continuer à fonctionner.
En règle générale, une requête normale ressemble à ceci
response <- httr::GET("http://目标网站.com")
Après avoir suspendu le proxy
proxy <- "123.45.67.89:8000"
response <- httr::GET("http://目标网站.com",
use_proxy(proxy))
Guide pratique de configuration du langage R
recommandéhttrrépondre en chantantrvestIl s'agit d'une paire d'or qui fonctionne en trois étapes :
Étape 1 Charger les bibliothèques nécessaires
bibliothèque(httr)
bibliothèque(rvest)
Etape 2 Définir les paramètres du proxy
ipipgo_proxy <- "用户名:密码@gateway.ipipgo.com:9020" Ici vous remplissez votre compte.
Etape 3 Envoyer la requête avec le proxy
resp <- GET("https://目标站点",
use_proxy(ipipgo_proxy), timeout(30))
timeout(30))
Analyse des données
doc <- content(resp, "parsed")
Voici un guide pour éviter les pièges
Trois erreurs courantes commises par les débutants :
| nid-de-poule | symptomatique | méthode régler un problème |
|---|---|---|
| L'accréditation n'était pas correcte. | Retourner l'erreur 407 | Vérifiez que le format du compte n'est pas user:pass@ip:port |
| Le délai d'attente n'est pas défini. | coincé et immobile (idiome) ; fig. coincé dans une ornière | Ne pas dépasser 30 secondes pour le paramètre timeout |
| Réutilisation de la propriété intellectuelle | Il est à nouveau bloqué. | Fonction de rotation dynamique avec ipipgo |
Les cas réels passent à la trappe
Récemment, un ami du commerce électronique a tenté d'obtenir des données sur les prix. Grâce à l'agent résidentiel d'ipipgo, le taux de réussite est passé de 45% à 92%. Le code clé est long comme ceci :
Mise en place du pool de proxy
proxies <- ipipgo_get_proxies(type="residential") Appeler l'API d'ipipgo pour obtenir de nouvelles IPs
for(page in 1:100){
proxy <- sample(proxies,1)
res <- GET(paste0("https://电商网站/page=",page),
use_proxy(proxy),
user_agent("Mozilla/5.0"))
Analyse des données stockées...
}
Foire aux questions QA
Q : Que puis-je faire pour remédier à la lenteur de la vitesse IP du proxy ?
R : choisissez le proxy d'entreprise statique d'ipipgo, la latence peut être contrôlée dans les 200 ms.
Q : Que se passe-t-il si j'ai besoin d'un CAPTCHA ?
R : Grâce à la fonction de routage intelligent d'ipipgo, les segments IP à faible probabilité CAPTCHA sont automatiquement attribués.
Q : Les proxys gratuits fonctionnent-ils ?
R : Je ne pense pas que ce soit le cas ! Neuf agents libres sur dix sont des pires, et vous devriez choisir un fournisseur de services professionnel comme ipipgo pour un usage commercial !
Pourquoi recommandez-vous ipipgo ?
Expérience réelle après plus de deux ans d'utilisation dans ma propre maison :
1. exclusifDétection de l'état de santé de l'IPFonction de filtrage automatique des proxies non valides
2. plus de 300 lignes urbaines à travers le pays, les données qui nécessitent un positionnement géographique peuvent également être saisies avec précision.
3. la mise à disposition de services spécialisésSDK du langage RLe service proxy est accessible en trois lignes de code.
Enfin, le harcèlement, avec l'agent de crawl des données pour se conformer à l'accord des robots du site, ne pas avec un site à la poignée de la mort. L'utilisation raisonnable des outils, afin d'être un long courant d'eau n'est pas ?

