Scrapy прокси завсрын програм: Request ба None буцаах утгууд
Scrapy прокси оноосны дараа удирдлагыг буцааж өгөөрэй; татахаас өмнө ижил хүсэлтийг санамсаргүйгээр дахин төлөвлөхгүй байх хэрэгтэй.
Прокси хаяг логт өөрчлөгддөг. Хүрэх газар проксийн нэвтрэх логт хэзээ ч харагдахгүй. Таны завсрын програм хүсэлтийг татагч руу огт нэвтрүүлж байгаа эсэхийг шалгаарай.
Scrapy татагчийн завсрын програмд Request буцаах нь тухайн хүсэлтийг дахин төлөвлөх гэсэн үг. Энэ нь «саяхан өөрчилсөн мета өгөгдөлтэйгээр энэ объектыг үргэлжлүүлэн илгээ» гэсэн үг биш.
Зөвхөн зам сонгодог сонгогчийн хувьд чухал хэлбэр нь:
def process_request(self, request):
request.meta['proxy'] = self.choose_proxy()
return None
Энэ хэсэг нь одоогийн hook хэлбэрийг харуулж байна; суулгасан Scrapy хувилбар дэмждэг завсрын програмын интерфейсийг ашиглаарай. Сонгогч хүчинтэй төгсгөлийн цэг буцааж, боломжгүй пулыг тодорхой зохицуулах ёстой. Олон нийтийн зуучлагчийг зөвшөөрдөг олон нийтийн шалгач тэр буцаах утгын хувьд HTTP прокси жагсаалтаас HTTP нэр дэвшигчдийг авч болно.
None буцаах нь үлдсэн хүсэлтийн завсрын програм болон татагчид үргэлжлүүлэх боломж олгоно. Өөр Request буцаах нь ажлыг санаатайгаар солих эсвэл дахин оролдох үед хэрэгтэй боловч шалтгаан, гарах нөхцөл шаардлагатай.
Тухайн хүсэлтийг байнга буцаадаг эргэлт нь хүрэх газартай холбоо тогтоохгүйгээр өөрийн сонголтын кодыг дахин дахин ажиллуулж болно. Тайм-аутыг нэмэгдүүлэх эсвэл илүү олон прокси порт нээх нь тэр удирдлагын урсгалын давталтыг засахгүй.
Завсрын програмд орох, буцаах зан төлөв, анхны бодит сүлжээний оролдлогыг тусдаа үйл явдал гэж үзээрэй. «Прокси сонгогдлоо» гэсэн лог мөр нь зөвхөн сонгогч ажилласныг нотолно. Сонгосон төгсгөлийн цэгтэй хүсэлт илгээгдсэнийг нотлохгүй.