Implicit, Scrapy alocă sloturi de descărcare după domeniul URL-ului cererii. Acordarea unui proxy HTTP unei cereri nu transformă acel URL în numele de gazdă al proxy-ului. Prin urmare, cererile către site-uri diferite pot păstra sloturi diferite în timp ce împart un singur intermediar.

AutoThrottle reglează întârzierea fiecărui slot folosind latența de descărcare observată. Limita standard de concurență pe domeniu și întârzierea minimă de descărcare se aplică în continuare.

Verificați gruparea înainte de a schimba algoritmul

Un middleware personalizat poate atribui request.meta["download_slot"], suprascriind selecția normală a slotului. Unele extensii proxy folosesc propria grupare. Examinați acele setări dacă site-uri fără legătură par să împartă un singur limitator.

Invers, atribuirea unui slot diferit pentru fiecare proxy poate permite mai multor proxy-uri să contacteze aceeași țintă simultan. Acest lucru poate anula o limită la nivelul întregului site pe care crawler-ul trebuia să o respecte. Alegeți cheia slotului în funcție de resursa protejată.

Întârzierea include traseul folosit

Scrapy măsoară latența de la trimiterea cererii până la primirea antetelor HTTP. O cerere purtată printr-un proxy poate include în această observație întârzierea de coadă și de redirecționare a intermediarului. AutoThrottle nu obține un timp de procesare separat doar al originii.

Creșterea concurenței nu poate face acea măsurătoare să izoleze site-ul. Păstrați politețea față de țintă și capacitatea proxy-ului ca limite separate atunci când ambele contează. Un proxy partajat poate avea nevoie de un buget suplimentar de concurență între sloturile țintelor, în timp ce fiecare țintă își păstrează propria politică de ritm.

Articole similare