
Handy C pour vous apprendre à utiliser C pour mettre un "gilet" sur le navigateur
L'ancien fer à repasser engagé dans la collecte de pages web a du rencontrer l'IP bloquée gênante, cette fois il faut donner au navigateur de quoi porter une "cape". Aujourd'hui nous allons bavarder de la manière d'utiliser CefSharp cet outil magique, en C au navigateur d'accrocher un proxy IP. pas de panique, l'opération est plus simple que de faire cuire des nouilles !
Ne soyez pas paresseux dans la préparation.
Tout d'abord, nous allons remettre de l'ordre dans la suite de trois pièces :
1. Visual Studio (la version 2017+ est solide)
2. le gestionnaire de paquets NuGet pour installer CefSharp.WinForms (version 87+ recommandée)
3. ressources IP proxy fiables - telles que les IP résidentielles dynamiques de la famille ipipgo.
Rappel ciblé :N'utilisez pas d'agents libres ! Neuf proxys gratuits sur dix ont été piégés, et le dernier est en train de l'être. J'ai utilisé un proxy gratuit lors d'un test précédent, et 8 fois sur 10, il n'a pas réussi à charger le captcha, et ce n'est que lorsque je suis passé à l'IP résidentielle dynamique d'ipipgo que les choses se sont arrangées.
Cinq étapes pour la configuration de l'agent
Suivez l'exemple de code ci-dessous pour opérer, l'œil sera la main :
// Initialisation de l'objet de configuration
var settings = new CefSettings() ;
// Le code clé est ici ! Remplacez-le par vos informations de proxy
settings.CefCommandLineArgs.Add("--proxy-server", "http://username:password@ipipgo-proxy.com:8080") ;
// Démarrer le navigateur
Cef.Initialize(settings) ; var browser = new ChromiumWebWorks.com ; // Démarrer le navigateur.
var browser = new ChromiumWebBrowser("https://whatismyipaddress.com") ;
Notez que le nom d'utilisateur et le mot de passe doivent être remplacés par les informations d'authentification fournies par ipipgo, il y a des extraits de code prêts à l'emploi dans leur documentation API qui peuvent être copiés directement pour les devoirs.
Technologie noire de commutation IP dynamique
Lorsque vous avez besoin de changer d'adresse IP, ne soyez pas idiot et ne redémarrez pas votre navigateur, essayez cette opération sordide :
// Obtenir une nouvelle IP (en utilisant l'API d'ipipgo comme exemple)
var newProxy = GetNewProxyFromIpipgo() ;
// Modifier le proxy d'exécution
browser.GetBrowser().GetHost().RequestContext.SetPreference("proxy", new Dictionary
{
{"mode", "fixed_servers"}, {"server", newProxy
{"serveur", newProxy.Address}
}, out _) ;
La vitesse de réponse de l'API d'ipipgo est mesurée à environ 200 ms, et vous ne sentez pratiquement pas le décalage lorsque vous changez d'adresse. Leur ligne TK est particulièrement adaptée à la nécessité de changer fréquemment de scénario IP, qui utilise qui sait.
Trousse de premiers secours pour les scènes de renversement
Q : Le code s'exécute mais l'adresse IP ne change pas ?
R : Vérifiez d'abord trois choses : ① le format de l'adresse du proxy n'est pas correct ② le mot de passe du compte a expiré ③ le pare-feu bloque ou non la demande. Il est recommandé d'utiliser le client ipipgo pour tester la disponibilité du proxy !
Q : Le site web HTTPS ne se charge pas ?
R : 80% est un problème de certificat, ajoutez-le dans les paramètres d'initialisation :
settings.CefCommandLineArgs.Add("--ignore-certificate-errors", "1") ;
Q : Comment puis-je savoir si la procuration est réellement en vigueur ?
R : Visitez la page de détection d'IP sur le site web d'ipipgo, et vous verrez que l'IP devient une adresse proxy et qu'elle est stable.
Comment choisir un fournisseur de services proxy ?
Directement au tableau de comparaison des produits secs :
| Fonctionnalité | ipipgo Résidentiel dynamique | Autres agents réguliers |
|---|---|---|
| Pureté IP | qualité de transporteur | Utilisation mixte des piscines communales |
| Prise en charge de la simultanéité | 500+ fils | 50 fils et c'est fini. |
| seuil de prix | À partir de 7,67 $/GB | Beaucoup de coûts cachés |
Pour être honnête, le développement de CefSharp craint surtout l'instabilité du proxy. Avant de prendre en charge un projet de commerce électronique, avec le proxy ordinaire pour redémarrer le programme plus d'une douzaine de fois par jour, remplacé par ipipgo IP résidentiel statique, fonctionnant pendant une semaine sans laisser tomber la ligne.
L'attitude correcte du ramassage de la laine
Bien que la tarification de l'ipipgo soit déjà très réelle, nous vous proposons ici une astuce pour économiser de l'argent : procéder à la collecte de données lorsque l'IP résidentielle dynamique et l'IP résidentielle statique sont utilisées de manière mixte. La session qui doit être ouverte utilise une IP statique pour maintenir la session, et les IP dynamiques sont utilisées pour les demandes ordinaires, de sorte que le coût peut être réduit d'environ 30%.
Enfin, j'aimerais dire une dernière chose : le réglage du proxy n'est pas une chose unique, n'oubliez pas de mettre à jour la version du SDK régulièrement. Le mois dernier, un frère utilisait une version CefSharp 51 vieille de trois ans, qui ne pouvait pas correspondre au proxy. En cas de problème, l'assistance technique d'ipipgo répond rapidement, en principe dans la demi-heure qui suit les jours ouvrables.

