Scrapy AutoThrottle gjennom ein proxy: slots og latens
Hald nedlastingsslotane til målområdet skilde frå proxy-ruter, og tolk latens som den observerte førespurnadsvegen.
Som standard tildeler Scrapy nedlastingsslots ut frå domenet til førespurnaden sin URL. Å gje ein førespurnad ein HTTP-proxy endrar ikkje den URL-en til vertsnamnet til proxyen. Førespurnader til ulike nettstader kan difor halde på ulike slots medan dei deler ein mellommann.
AutoThrottle justerer forseinkinga til kvar slot ut frå den observerte nedlastingslatensen. Standardgrensa for samtid per domene og minste nedlastingsforseinking gjeld framleis.
Sjekk grupperinga før du endrar algoritmen
Ein eigen middleware kan tildele request.meta["download_slot"] og overstyre det vanlege slotvalet. Nokre proxy-utvidingar brukar si eiga gruppering. Gransk desse innstillingane om urelaterte nettstader ser ut til å dele ein avgrensar.
Omvendt kan tildeling av eit anna slot for kvar proxy la fleire proxyar kontakte same mål samstundes. Det kan undergrave ei grense for heile nettstaden som crawleren skulle respektere. Vel slotnøkkelen etter ressursen som vert verna.
Forseinkinga omfattar vegen du brukte
Scrapy målar latens frå førespurnaden vert send til HTTP-hovuda vert mottekne. Ein førespurnad som går gjennom ein proxy kan ta med mellommannen si kø- og videresendingsforseinking i den observasjonen. AutoThrottle får ikkje ei eiga handsamingstid berre for opphavet.
Auka samtid kan ikkje få den målinga til å isolere nettstaden. Hald målhøflegheit og proxykapasitet som skilde grenser når begge tel. Ein delt proxy kan trenge eit ekstra samtidsbudsjett over målslots, medan kvart mål held på si eiga fartsrettleiing.