HTTP прокси мидълуерът на Scrapy чете прокси от метаданните на заявката:

yield scrapy.Request(
    'https://example.com/',
    callback=self.parse,
    meta={'proxy': 'http://203.0.113.10:8080'},
)

Заменете крайната точка от документацията и оставете мидълуера включен. Списъкът с HTTP прокси предлага публични кандидати за URL адреса на тази заявка. Това избира маршрута на заявката; пулът от прокси изисква отделна логика за избор.

Удостоверяването следва избраната крайна точка

Вграденият мидълуер обработва идентификационните данни, подадени чрез поддържания прокси URL и свързания заглавка за оторизация. Екранирайте запазените URL символи и избягвайте записването на този URL в логове.

Отделен мидълуер не бива да запазва Basic заглавка за предишното прокси, след като крайната точка се смени. Нека един слой управлява маршрута и идентификационните данни заедно.

Ред на избор и настройки по подразбиране

Ако собствен мидълуер за изтегляне избира проксито, го стартирайте преди вграденият прокси мидълуер да обработи заявката. Проверете реда и API на инсталираната версия; остарелите импорти scrapy.contrib принадлежат на по-стари версии.

Средата на процеса може също да предоставя настройки по подразбиране за конкретна схема. За умишлено директна заявка използвайте документираното специално поведение на метаданните proxy: липсващият ключ не означава непременно директен достъп.

Проверете действителния резултат. 407 се отнася до удостоверяване на проксито, докато ограничение на честотата или отказ на достъп от сайт могат да дойдат, след като маршрутът е работил правилно.

Подобни статии