Odatiy holatda Scrapy yuklab olish slotlarini so'rov URL manzilining domeniga qarab belgilaydi. So'rovga HTTP proksi berish bu URL ni proksi host nomiga aylantirmaydi. Shu sababli turli saytlarga yuborilgan so'rovlar bitta vositachini baham ko'rib, turli slotlarni saqlab qolishi mumkin.

AutoThrottle kuzatilgan yuklab olish kechikishidan foydalanib har bir slotning kechikishini sozlaydi. Standart domen bo'yicha parallellik chegarasi va minimal yuklab olish kechikishi hali ham amal qiladi.

Algoritmni o'zgartirishdan oldin guruhlashni tekshiring

Maxsus middleware request.meta["download_slot"] ni belgilab, odatdagi slot tanlovini bekor qilishi mumkin. Ba'zi proksi kengaytmalari o'z guruhlashidan foydalanadi. Aloqasiz saytlar bitta cheklovchini baham ko'rayotgandek ko'rinsa, o'sha sozlamalarni tekshiring.

Aksincha, har bir proksi uchun alohida slot belgilash bir nechta proksining bir vaqtda bir maqsadga murojaat qilishiga imkon beradi. Bu crawler hurmat qilishi kerak bo'lgan sayt bo'ylab cheklovni buzishi mumkin. Slot kalitini himoyalanayotgan resursga qarab tanlang.

Kechikish siz ishlatgan yo'lni o'z ichiga oladi

Scrapy kechikishni so'rov yuborilgandan HTTP sarlavhalari olinmaguncha o'lchaydi. Proksi orqali o'tkazilgan so'rov bu kuzatuvga vositachining navbat va uzatish kechikishini qo'shishi mumkin. AutoThrottle faqat manbaga tegishli alohida ishlov berish vaqtini olmaydi.

Parallellikni oshirish bu o'lchovni saytni ajratib turishga majbur qila olmaydi. Ikkalasi ham muhim bo'lganda maqsadga xushmuomalalik va proksi sig'imini alohida chegaralar sifatida saqlang. Umumiy proksi maqsad slotlari bo'ylab qo'shimcha parallellik byudjetiga muhtoj bo'lishi mumkin, har bir maqsad esa o'z tezlik siyosatini saqlaydi.

O'xshash maqolalar