Tableau de bord

Frameworks d'automatisation

Méthodes d'intégration de Selenium, Puppeteer, Playwright, Scrapy et des autres frameworks d'automatisation et de collecte. Tous les exemples sont exécutables après remplacement de USERNAME et PASSWORD par vos identifiants.

Scrapy

Activez le middleware proxy dans settings.py, ou définissez le proxy requête par requête :

# Méthode 1 : globale (settings.py)
HTTPPROXY_ENABLED = True

# Dans le Spider, spécifier le proxy pour chaque requête
def start_requests(self):
    proxy = "http://USERNAME-pool-flow-region-US:[email protected]:23333"
    for url in self.start_urls:
        yield scrapy.Request(url, meta={"proxy": proxy})

La rotation à chaque requête est le comportement par défaut, naturellement adapté au modèle de concurrence de Scrapy ; pour figer l'IP par session, ajoutez un sid dans le username.

Selenium (Python)

Les paramètres en ligne de commande de Chrome ne prennent pas en charge les proxys avec authentification ; il est recommandé d'utiliser selenium-wire pour gérer les identifiants :

# pip install selenium-wire
from seleniumwire import webdriver

options = {
    "proxy": {
        "http": "http://USERNAME-pool-flow-region-US:[email protected]:23333",
        "https": "http://USERNAME-pool-flow-region-US:[email protected]:23333",
    }
}

driver = webdriver.Chrome(seleniumwire_options=options)
driver.get("https://ipinfo.io")
print(driver.page_source)
driver.quit()

Vous pouvez aussi opter pour le mode liste blanche : extrayez des IP:port sans authentification, puis utilisez directement le paramètre natif --proxy-server.

Puppeteer (Node.js)

const puppeteer = require("puppeteer");

(async () => {
  const browser = await puppeteer.launch({
    args: ["--proxy-server=http://proxy.eproxies.net:23333"],
  });
  const page = await browser.newPage();
  await page.authenticate({
    username: "USERNAME-pool-flow-region-US",
    password: "PASSWORD",
  });
  await page.goto("https://ipinfo.io/json");
  console.log(await page.evaluate(() => document.body.innerText));
  await browser.close();
})();

Playwright (Node.js / Python)

// Node.js
const { chromium } = require("playwright");

(async () => {
  const browser = await chromium.launch({
    proxy: {
      server: "http://proxy.eproxies.net:23333",
      username: "USERNAME-pool-flow-region-US",
      password: "PASSWORD",
    },
  });
  const page = await browser.newPage();
  await page.goto("https://ipinfo.io/json");
  console.log(await page.textContent("body"));
  await browser.close();
})();
# Python
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(proxy={
        "server": "http://proxy.eproxies.net:23333",
        "username": "USERNAME-pool-flow-region-US",
        "password": "PASSWORD",
    })
    page = browser.new_page()
    page.goto("https://ipinfo.io/json")
    print(page.text_content("body"))
    browser.close()

Pipelines de données AI Agent / LLM

Lorsque vous pilotez un navigateur ou collectez des données avec un LLM (outils LangChain, Browser Use, agents maison, etc.), transmettez simplement la configuration proxy de l'un des frameworks ci-dessus. Points clés :

  • Attribuez un sid indépendant à chaque agent parallèle pour éviter toute interférence (exemple multi-sessions).
  • Faites vérifier l'IP de sortie par l'agent en début de tâche (requête vers https://ipinfo.io) avant l'exécution du travail proprement dit.
  • Toute la syntaxe des paramètres condensée sur une page : Aide-mémoire Agent.

Outils de collecte web

Tutoriels officiels de configuration des outils de collecte graphiques : Octoparse · Scrapy · ScrapeStorm · SellerSprite · Helium 10