O middleware de proxy HTTP de Scrapy le un proxy dos metadatos da solicitude:

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

Substitúa o punto final da documentación e manteña o middleware activado. A lista de proxies HTTP ofrece candidatos públicos para o URL desta solicitude. Isto selecciona a ruta da solicitude; un conxunto de proxies necesita unha lóxica de selección separada.

A autenticación segue o punto final seleccionado

O middleware integrado xestiona as credenciais proporcionadas mediante o seu URL de proxy compatible e a cabeceira de autorización asociada. Escapa os caracteres reservados do URL e evita rexistrar ese URL.

Un middleware separado non debería conservar unha cabeceira Basic para o proxy anterior despois de cambiar o punto final. Deixa que unha soa capa xestione a ruta e as súas credenciais xuntas.

Orde de selección e valores predeterminados

Se un middleware de descarga personalizado escolle o proxy, execútao antes de que o middleware de proxy integrado procese a solicitude. Comproba a orde e a API da versión instalada; as importacións scrapy.contrib obsoletas pertencen a versións anteriores.

A contorna do proceso tamén pode proporcionar valores predeterminados específicos do esquema. Para unha solicitude deliberadamente directa, usa o comportamento especial documentado dos metadatos proxy: unha clave ausente non significa necesariamente acceso directo.

Inspecciona o resultado real. Un 407 refírese á autenticación do proxy, mentres que un límite de velocidade ou unha denegación de acceso do sitio web poden chegar despois de que a ruta funcionase correctamente.

Artigos relacionados