Predvolene Scrapy priraďuje sťahovacie sloty podľa domény URL požiadavky. Pridanie HTTP proxy k požiadavke nezmení túto URL na názov hostiteľa proxy. Požiadavky na rôzne stránky tak môžu mať rôzne sloty, hoci zdieľajú jedného sprostredkovateľa.

AutoThrottle upravuje oneskorenie každého slotu podľa pozorovanej latencie sťahovania. Štandardný limit súbežnosti na doménu a minimálne oneskorenie sťahovania stále platia.

Pred zmenou algoritmu skontrolujte zoskupenie

Vlastný middleware môže priradiť request.meta["download_slot"] a prepísať tak bežný výber slotu. Niektoré rozšírenia proxy používajú vlastné zoskupenie. Preverte tieto nastavenia, ak sa zdá, že nesúvisiace stránky zdieľajú jeden obmedzovač.

Naopak, priradenie iného slotu pre každú proxy môže umožniť viacerým proxy súčasne kontaktovať rovnaký cieľ. Môže to narušiť limit pre celú stránku, ktorý mal crawler rešpektovať. Kľúč slotu vyberte podľa chráneného zdroja.

Oneskorenie zahŕňa cestu, ktorú ste použili

Scrapy meria latenciu od odoslania požiadavky po prijatie hlavičiek HTTP. Požiadavka vedená cez proxy môže do tohto pozorovania zahrnúť oneskorenie sprostredkovateľa v rade a pri preposielaní. AutoThrottle nezíska osobitný čas spracovania len na strane pôvodu.

Zvýšenie súbežnosti nedosiahne, aby toto meranie izolovalo stránku. Udržujte ohľaduplnosť voči cieľu a kapacitu proxy ako oddelené limity, keď sú dôležité obe. Zdieľaná proxy môže potrebovať dodatočný rozpočet súbežnosti naprieč slotmi cieľov, pričom každý cieľ si zachováva vlastnú politiku tempa.

Súvisiace články