
Selenium rencontre Proxy IP : la fenêtre est enfin brisée !
Les confrères engagés dans les tests d'automatisation doivent comprendre que lorsqu'ils utilisent Selenium pour simuler le comportement d'un utilisateur réel, la plus grande crainte est de se retrouver avec une IP bloquée. Si vous n'avez pas d'IP proxy, le projet sera jaune dans une minute. Aujourd'hui, nous allons vous apprendre à utiliser le proxy IP et le sélecteur CSS de ces deux outils magiques.
Les dix-huit manières de Proxy IP
Tout d'abord, racontons une histoire vraie : l'année dernière, une équipe de comparaison des prix du commerce électronique n'a pas accroché l'agent pour qu'il escalade directement les données d'une plate-forme, ce qui a eu pour effet de bloquer plus de 200 comptes en l'espace d'une demi-heure. Plus tard, ils ont changéProxy résidentiel dynamique pour ipipgoCette stratégie, associée à la stratégie de rotation, a permis de renforcer le taux de réussite de la collecte de données, qui est passé de 231 TP3T à 981 TP3T.
Les merveilles des IP proxy dans les scénarios d'automatisation :
- Fausse géolocalisation réelle (par exemple, pour attraper des produits soumis à des restrictions régionales)
- Dépasser la limite de fréquence d'une seule demande d'IP
- Empêcher la reconnaissance des caractéristiques (certains sites prennent les empreintes digitales du navigateur)
Sélecteurs CSS : l'aiguille à broder pour positionner les éléments
Pourquoi les vieux conducteurs aiment-ils les sélecteurs CSS ? Par exemple, pour trouver tous les boutons de la page avec la catégorie "acheter maintenant", il faudrait utiliser XPath pour écrire//[contains(@class,'buy-now')]et CSS directement.buy-nowC'est fait. La différence est la même qu'entre ramasser des cacahuètes avec des baguettes et les ramasser avec une cuillère.
Exemple de code
from selenium.webdriver import ChromeOptions
Modifiez ici les informations de proxy fournies par ipipgo
proxy = "123.123.123.123:8888"
options = ChromeOptions()
options.add_argument(f'--proxy-server={proxy}')
driver = webdriver.Chrome(options=options)
Repérez la boîte de recherche avec CSS
search_box = driver.find_element_by_css_selector("inputkw.s_ipt")
Le secret de la coordination du Match d'Or
Citez quelques nids-de-poule dans lesquels il est facile de tomber :
- Lorsque l'IP proxy échoue, n'oubliez pas d'ajouterMécanisme de relecture(Il est recommandé d'utiliser l'API d'ipipgo pour changer d'IP automatiquement)
- Rencontres sur le positionnement CSS classe dynamique, essayer le sélecteur d'attribut
[nom^='dynamic_'] - Vérifiez que le proxy est en vigueur : visitez le site
https://httpbin.org/ipRegardez le retour IP
Le temps de l'assurance qualité : un guide pour éviter le gouffre
Q : Que dois-je faire si mon IP proxy tombe soudainement en panne ?
A : recommandé par ipipgoDynamic Residential (Enterprise Edition)Paquet avec son propre contrôle de santé IP, rejetant automatiquement les nœuds défaillants.
Q:CSS positioning ne peut toujours pas trouver l'élément ?
R : 80% de la page n'est pas encore chargée, ajoutez une attente explicite :
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.CSS_SELECTOR, ".list-item")))
le bon outil permet d'économiser des efforts et d'obtenir de meilleurs résultats
Nous avons récemment aidé un client à collecter des données sur le commerce électronique transfrontalier à l'aide du logiciel ipipgo.Agents résidentiels statiquesAvec le positionnement CSS, 200 000 données de marchandises ont été capturées en 3 jours. Leur ligne TK est vraiment stable, et le nombre de CAPTCHA est deux fois moins élevé qu'avec les proxys ordinaires.
| Type d'emballage | Scénarios applicables |
|---|---|
| Dynamique résidentielle (standard) | Collecte de données de routine |
| Dynamic Residential (Entreprise) | Scénarios commerciaux à haute fréquence |
| Maisons statiques | Services nécessitant un IP fixe |
La dernière phrase qui fâche : ne vous ruinez pas sur l'IP proxy, un bon service proxy peut vous faire gagner au moins 30% de temps de débogage. En particulier si vous réalisez un projet à long terme, il est préférable d'utiliser directement l'IP proxy.paquet entreprise d'ipipgoCe pack trafic est moins cher qu'un thé au lait une fois converti.

