Scrapy privzeto dodeli reže za prenos glede na domeno URL-ja zahteve. Dodelitev proxyja HTTP zahtevi tega URL-ja ne spremeni v ime gostitelja proxyja. Zahteve na različna spletišča lahko zato ohranijo različne reže, medtem ko si delijo enega posrednika.

AutoThrottle prilagodi zakasnitev vsake reže glede na opaženo zakasnitev prenosa. Standardna omejitev sočasnosti na domeno in najmanjša zakasnitev prenosa še vedno veljata.

Preden spremenite algoritem, preverite združevanje

Vmesna programska oprema po meri lahko dodeli request.meta["download_slot"] in s tem preglasi običajno izbiro reže. Nekatere razširitve proxyja uporabljajo svoje združevanje. Preverite te nastavitve, če se zdi, da si nepovezana spletišča delijo en omejevalnik.

Nasprotno pa lahko dodelitev drugačne reže za vsak proxy omogoči več proxyjem, da hkrati stopijo v stik z istim ciljem. To lahko izniči omejitev za celotno spletišče, ki bi jo pajek moral spoštovati. Ključ reže izberite glede na zaščiteni vir.

Zakasnitev vključuje pot, ki ste jo uporabili

Scrapy meri zakasnitev od pošiljanja zahteve do prejema glav HTTP. Zahteva, ki potuje skozi proxy, lahko v to opazovanje vključi čakalno vrsto in zakasnitev posredovanja posrednika. AutoThrottle ne dobi ločenega časa obdelave samo izvora.

Povečanje sočasnosti ne more doseči, da bi ta meritev izolirala spletišče. Vljudnost do cilja in zmogljivost proxyja naj ostaneta ločeni omejitvi, kadar sta pomembni obe. Skupni proxy lahko potrebuje dodaten proračun sočasnosti po režah ciljev, medtem ko vsak cilj ohrani svojo politiko hitrosti.

Sorodni članki