Skip to content

Exemples de scripts Selenium : Connexion auto et Cookies

Ce chapitre fournit des modèles de code prêts à l'emploi que vous pouvez adapter à vos besoins en commerce électronique ou en gestion de réseaux sociaux.


1. Modèle de connexion automatique stable

Ce script comprend la gestion des erreurs et l'attente intelligente.

python
import requests
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# Initialisation omise (voir Chapitre 2)

def login_task(driver):
    try:
        driver.get("https://example.com/login")
        wait = WebDriverWait(driver, 15)

        # Attendre que le champ email apparaisse et saisir
        email_input = wait.until(EC.presence_of_element_id((By.NAME, "email")))
        email_input.send_keys("test@example.com")

        # Saisir le mot de passe
        driver.find_element(By.NAME, "password").send_keys("password123")

        # Cliquer sur le bouton de connexion
        driver.find_element(By.ID, "login-btn").click()

        # Vérifier si la connexion a réussi (attendre un élément spécifique du tableau de bord)
        wait.until(EC.presence_of_element_located((By.CLASS_NAME, "user-profile")))
        print("✅ Connexion réussie !")

    except Exception as e:
        print(f"❌ Échec de la tâche de connexion : {str(e)}")

2. Injection de Cookies par lots (Migrer l'état de connexion)

Si vous avez des cookies achetés ou sauvegardés, vous pouvez les injecter directement dans Mbbrowser pour éviter le processus de connexion.

python
def inject_cookies(driver, cookies_list):
    # Vous devez d'abord charger le domaine cible pour définir les cookies
    driver.get("https://example.com") 
    
    for cookie in cookies_list:
        # Assurez-vous que le format du cookie est compatible avec Selenium
        driver.add_cookie({
            'name': cookie['name'],
            'value': cookie['value'],
            'domain': 'example.com' # Doit correspondre au domaine actuel
        })
    
    # Rafraîchir pour appliquer les cookies
    driver.refresh()
    print("✅ Cookies injectés, état de connexion restauré.")

3. Scénario de commerce électronique : Vérification du prix Amazon

python
def check_amazon_price(driver, product_url):
    driver.get(product_url)
    try:
        price = driver.find_element(By.CLASS_NAME, "a-price-whole").text
        print(f"💰 Prix actuel : {price}")
    except:
        print("Imposible de charger le prix.")

4. Conseils Anti-détection (Chauffage de compte)

Pour les plateformes très strictes, évitez les comportements purement mécaniques :

  1. Vitesse de saisie variable :
    python
    def human_type(element, text):
        for char in text:
            element.send_keys(char)
            time.sleep(0.1) # Petite pause aléatoire
  2. Mouvements de souris aléatoires : Utilisez ActionChains pour déplacer la souris sur des éléments décoratifs avant de cliquer.
  3. Défilement réaliste : Ne sautez pas directement en bas de la page ; faites défiler par petits morceaux.

TIP

Ces scripts sont des points de départ. En utilisant les environnements d'empreintes isolés de Mbbrowser, vous avez déjà surmonté le plus grand obstacle (la détection matérielle/IP). L'automatisation logicielle ne fait qu'ajouter une couche d'efficacité supplémentaire.