L'assenza di X-ProxyMesh-IP in una callback HTTPS di Scrapy non prova un instradamento diretto. Con HTTPS in tunnel, ProxyMesh inserisce gli header di instradamento sulla risposta CONNECT; la risposta successiva del sito è dentro TLS e non include automaticamente quei metadati precedenti.

Dove l'header è esposto in una callback, leggilo in modo condizionale:

exit_ip = response.headers.get(b'X-ProxyMesh-IP')
if exit_ip is not None:
    self.logger.info('Reported exit IP: %s', exit_ip.decode('ascii'))

Questo è l'exit riportato dal provider per quello scambio, non il nome host di ingresso configurato.

Se servono i metadati del tunnel, usa un'integrazione handler compatibile che esponga gli header CONNECT. ProxyMesh ne mantiene una proprio per questo scopo; verifica la versione di Scrapy supportata e il download handler. L'analisi del ragno non può rivelare header che il trasporto non ha mai fornito.

Associa i metadati alla loro connessione. Riusare un tunnel non crea un'altra risposta CONNECT per ogni pagina. Per un indirizzo di origine indipendente osservato dalla destinazione, ispeziona la connessione in ingresso di quella destinazione invece di trattare l'header del provider come un rilevatore IP universale.

Articoli correlati