HTTP proxy middleware Scrapy čte proxy z metadat požadavku:

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

Nahraďte koncový bod z dokumentace a middleware ponechte zapnutý. Seznam HTTP proxy nabízí veřejné kandidáty pro URL tohoto požadavku. Tím se volí trasa požadavku; fond proxy potřebuje samostatnou logiku výběru.

Autentizace následuje zvolený koncový bod

Vestavěný middleware zpracovává přihlašovací údaje dodané přes podporované URL proxy a související autorizační hlavičku. Escapujte rezervované znaky URL a vyhněte se logování tohoto URL.

Samostatný middleware by neměl po změně koncového bodu uchovávat hlavičku Basic pro předchozí proxy. Ať jedna vrstva spravuje trasu i její přihlašovací údaje společně.

Pořadí výběru a výchozí hodnoty

Pokud proxy vybírá vlastní downloader middleware, spusťte jej předtím, než vestavěný proxy middleware požadavek zpracuje. Zkontrolujte pořadí a API nainstalované verze; zastaralé importy scrapy.contrib patří ke starším verzím.

Prostředí procesu může také poskytovat výchozí hodnoty specifické pro schéma. Pro záměrně přímý požadavek použijte dokumentované speciální chování metadat proxy: chybějící klíč nemusí znamenat přímý přístup.

Zkontrolujte skutečný výsledek. 407 se týká autentizace proxy, zatímco limit rychlosti nebo odmítnutí přístupu ze strany webu může přijít poté, co trasa fungovala správně.

Související články