Scrapy AutoThrottle ຜ່ານ proxy: ສະລັອດ ແລະ ຄວາມຊ້າ
ແຍກສະລັອດການດາວໂຫຼດຂອງເວັບໄຊເປົ້າໝາຍອອກຈາກເສັ້ນທາງ proxy ແລະ ຕີຄວາມຄວາມຊ້າເປັນເສັ້ນທາງຄຳຮ້ອງທີ່ສັງເກດເຫັນ.
ຕາມຄ່າເລີ່ມຕົ້ນ Scrapy ຈັດສັນສະລັອດການດາວໂຫຼດຈາກໂດເມນຂອງ URL ຄຳຮ້ອງ. ການໃຫ້ proxy HTTP ແກ່ຄຳຮ້ອງບໍ່ໄດ້ປ່ຽນ URL ນັ້ນເປັນຊື່ໂຮສຂອງ proxy. ດັ່ງນັ້ນຄຳຮ້ອງໄປຫາເວັບທີ່ຕ່າງກັນສາມາດຮັກສາສະລັອດທີ່ຕ່າງກັນໄດ້ໃນຂະນະທີ່ໃຊ້ຕົວກາງອັນດຽວ.
AutoThrottle ປັບຄວາມຫ່າງຂອງແຕ່ລະສະລັອດໂດຍໃຊ້ຄວາມຊ້າຂອງການດາວໂຫຼດທີ່ສັງເກດເຫັນ. ຂີດຈຳກັດການເຮັດວຽກພ້ອມກັນຕໍ່ໂດເມນມາດຕະຖານ ແລະ ຄວາມຫ່າງການດາວໂຫຼດຂັ້ນຕ່ຳຍັງໃຊ້ຢູ່.
ກວດເບິ່ງການຈັດກຸ່ມກ່ອນປ່ຽນຂັ້ນຕອນວິທີ
middleware ທີ່ກຳນົດເອງສາມາດກຳນົດ request.meta["download_slot"] ເຊິ່ງຂ້າມການເລືອກສະລັອດປົກກະຕິ. ສ່ວນຂະຫຍາຍ proxy ບາງອັນໃຊ້ການຈັດກຸ່ມຂອງຕົນເອງ. ກວດເບິ່ງການຕັ້ງຄ່າເຫຼົ່ານັ້ນຖ້າເວັບທີ່ບໍ່ກ່ຽວຂ້ອງເບິ່ງຄືວ່າໃຊ້ຕົວຈຳກັດອັນດຽວກັນ.
ກົງກັນຂ້າມ ການກຳນົດສະລັອດຕ່າງກັນໃຫ້ແຕ່ລະ proxy ສາມາດເຮັດໃຫ້ຫຼາຍ proxy ຕິດຕໍ່ເປົ້າໝາຍດຽວກັນພ້ອມກັນ. ນັ້ນອາດທຳລາຍຂີດຈຳກັດທົ່ວເວັບທີ່ crawler ຄວນເຄົາລົບ. ເລືອກກຸນແຈສະລັອດຕາມຊັບພະຍາກອນທີ່ຖືກປົກປ້ອງ.
ຄວາມຫ່າງລວມມີເສັ້ນທາງທີ່ທ່ານໃຊ້
Scrapy ວັດຄວາມຊ້າຈາກການສົ່ງຄຳຮ້ອງຈົນເຖິງການຮັບ HTTP header. ຄຳຮ້ອງທີ່ຜ່ານ proxy ອາດລວມຄວາມຫ່າງຂອງຄິວ ແລະ ການສົ່ງຕໍ່ຂອງຕົວກາງໃນການສັງເກດນັ້ນ. AutoThrottle ບໍ່ໄດ້ຮັບເວລາປະມວນຜົນແຍກຕ່າງຫາກສຳລັບແຫຼ່ງກຳເນີດເທົ່ານັ້ນ.
ການເພີ່ມການເຮັດວຽກພ້ອມກັນບໍ່ສາມາດເຮັດໃຫ້ການວັດນັ້ນແຍກເວັບໄຊອອກໄດ້. ຮັກສາຄວາມສຸພາບຕໍ່ເປົ້າໝາຍ ແລະ ຄວາມສາມາດຂອງ proxy ເປັນຂີດຈຳກັດແຍກກັນເມື່ອທັງສອງສຳຄັນ. proxy ທີ່ໃຊ້ຮ່ວມອາດຕ້ອງການ ງົບປະມານການເຮັດວຽກພ້ອມກັນເພີ່ມເຕີມຂ້າມສະລັອດເປົ້າໝາຍ ໃນຂະນະທີ່ແຕ່ລະເປົ້າໝາຍຍັງຮັກສານະໂຍບາຍອັດຕາຂອງຕົນ.