Прокси за секое барање со HTTP прокси middleware на Scrapy
Користете ги метаподатоците на барањата на Scrapy и неговиот прокси middleware пред да копирате стар прилагоден middleware за автентикација во crawler.
HTTP прокси middleware на Scrapy чита прокси од метаподатоците на барањето:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
Заменете ја крајната точка од документацијата и оставете го middleware вклучен. Списокот на HTTP прокси нуди јавни кандидати за URL-то на ова барање. Ова ја избира рутата на барањето; базенот на прокси бара одделна логика за избор.
Автентикацијата ја следи избраната крајна точка
Вградениот middleware обработува акредитиви доставени преку поддржаното прокси URL и поврзаниот заглавје за авторизација. Избегнете резервираните URL знаци и избегнувајте евидентирање на тоа URL.
Одделен middleware не треба да задржи Basic заглавје за претходното прокси откако ќе се промени крајната точка. Нека еден слој управува со рутата и нејзините акредитиви заедно.
Ред на избор и стандардни вредности
Ако прилагоден downloader middleware го избира проксито, стартувајте го пред вградениот прокси middleware да го обработи барањето. Проверете го редот и API-то на инсталираната верзија; застарените scrapy.contrib увози припаѓаат на постари верзии.
Окружувањето на процесот може да обезбеди и стандардни вредности специфични за шемата. За намерно директно барање користете го документираното специјално однесување на метаподатоците proxy: отсутен клуч не значи нужно директен пристап.
Проверете го вистинскиот резултат. 407 се однесува на автентикација на прокси, додека ограничување на брзината или одбивање пристап од веб-страница може да дојде откако рутата работела правилно.