Crawlee 3 koppel 'n proxy-URL aan 'n sessie-ID
Gebruik Crawlee 3.14 se ProxyConfiguration-sessieargument vir stabiele roeteskeuse, en hou rekening met die veranderde eienaarskapmodel in die v4-migrasiedokumentasie.
In Crawlee 3.14 kan ProxyConfiguration 'n sessie-identifiseerder aan 'n gekose proxy-URL koppel:
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');
Die HTTP-proxylys lewer openbare kandidate vir proxyUrls. Herhaalde oproepe met dieselfde sessie-ID gee dieselfde gekoppelde URL. Sonder 'n sessie-ID roteer die verskafde lys rondom. Dit kies 'n gekonfigureerde eindpunt; 'n stroomopdiens wat self uitgange roteer agter een URL behou steeds beheer oor sy eie uitgangsgedrag.
Vir sessies wat die kruiper bestuur, gebruik die kruiper se sessiepoel en koekie-volharding. Om maxConcurrency na een te verlaag is nie 'n plaasvervanger daarvoor om te bepaal watter versoeke aan dieselfde sessie behoort nie.
Om 'n sessie te onttrek skep 'n nuwe identiteitsgrens. Hou sy roete, koekies en werkladvragtoestand konsekwent eerder as om net een veld tydens 'n aanmelding of meerstapoperasie te roteer.
Die hoofweergawe maak saak. Crawlee se v4-migrasiedokumentasie verwyder die sessionId-argument uit newUrl en skuif proxykoppeling na Session-eienaarskap. Die voorbeeld hierbo gebruik opsetlik die v3-koppelvlak; moenie sy argument na 'n ander hoofweergawe kopieer sonder om daardie lewensiklus aan te pas nie.