Әдепкіде Scrapy жүктеу слоттарын сұрау URL-інің домені бойынша тағайындайды. Сұрауға HTTP проксисін беру бұл URL-ді проксидің хост атауына айналдырмайды. Сондықтан әртүрлі сайттарға сұраулар бір делдалды бөлісе отырып, әртүрлі слоттарды сақтай алады.

AutoThrottle әр слоттың кідірісін байқалған жүктеу кідірісіне сүйене отырып реттейді. Стандартты домен бойынша параллельдік шегі және ең аз жүктеу кідірісі әлі де қолданылады.

Алгоритмді өзгерту алдында топтастыруды тексеріңіз

Арнайы middleware request.meta["download_slot"] тағайындап, әдеттегі слот таңдауын ауыстыра алады. Кейбір прокси кеңейтімдері өз топтастыруын қолданады. Байланысы жоқ сайттар бір шектеуішті бөлісіп тұрса, сол параметрлерді қарап шығыңыз.

Керісінше, әр прокси үшін бөлек слот тағайындау бірнеше проксидің бір мезгілде бір мақсатқа қосылуына мүмкіндік береді. Бұл шарлаушы сақтауға тиіс сайт көлеміндегі шекті бұзуы мүмкін. Слот кілтін қорғалатын ресурсқа сәйкес таңдаңыз.

Кідіріс сіз пайдаланған жолды қамтиды

Scrapy кідірісті сұрауды жіберуден HTTP тақырыптарын алуға дейін өлшейді. Прокси арқылы өткен сұрау бұл байқауға делдалдың кезек және жіберу кідірісін қосуы мүмкін. AutoThrottle тек бастау көзіне қатысты бөлек өңдеу уақытын алмайды.

Параллельдікті арттыру бұл өлшеуді сайтты оқшаулауға мәжбүрлей алмайды. Мақсатқа сыпайылық пен прокси сыйымдылығын екеуі де маңызды болғанда бөлек шектеулер ретінде ұстаңыз. Ортақ проксиге мақсат слоттары бойынша қосымша параллельдік бюджеті қажет болуы мүмкін, ал әр мақсат өз жылдамдық саясатын сақтайды.

Қатысты мақалалар