Dans Crawlee 3.14, ProxyConfiguration peut associer un identifiant de session à une URL de proxy choisie :

import { ProxyConfiguration } from 'crawlee';

const proxies = new ProxyConfiguration({
  proxyUrls: [
    'http://proxy-a.example:8080',
    'http://proxy-b.example:8080',
  ],
});
const first = await proxies.newUrl('checkout-a');
const sameRoute = await proxies.newUrl('checkout-a');
const anotherSession = await proxies.newUrl('checkout-b');

La liste de proxys HTTP fournit des candidats publics pour proxyUrls. Les appels répétés avec le même ID de session renvoient l'URL qui lui est associée. Sans ID de session, la liste fournie tourne en rond. Cela sélectionne un point de terminaison configuré ; un service en amont qui fait tourner des sorties derrière une URL contrôle toujours son propre comportement de sortie.

Pour les sessions gérées par le crawler, utilisez le pool de sessions du crawler et le dispositif de persistance des cookies. Abaisser maxConcurrency à un ne remplace pas la définition des requêtes qui appartiennent à la même session.

Retirer une session crée une nouvelle frontière d'identité. Gardez sa route, ses cookies et l'état de sa charge de travail cohérents au lieu de ne faire tourner qu'un seul champ pendant une connexion ou une opération en plusieurs étapes.

La version majeure compte. La documentation de migration de Crawlee vers v4 supprime l'argument sessionId de newUrl et déplace l'association du proxy vers la propriété de Session. L'exemple ci-dessus utilise volontairement l'interface v3 ; ne copiez pas son argument dans une autre version majeure sans adapter ce cycle de vie.

Articles similaires