Scrapyjev HTTP proxy middleware čita proksi iz metapodataka zahtjeva:

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

Zamijenite endpoint iz dokumentacije i ostavite middleware uključenim. Popis HTTP proksija nudi javne kandidate za URL ovog zahtjeva. Time se odabire ruta zahtjeva; proksi pool treba zasebnu logiku odabira.

Autentifikacija slijedi odabrani endpoint

Ugrađeni middleware obrađuje vjerodajnice dostavljene kroz podržani URL proksija i povezano zaglavlje autorizacije. Izbjegnite rezervirane URL znakove i ne bilježite taj URL u zapise.

Zasebni middleware ne bi trebao zadržati Basic zaglavlje za prethodni proksi nakon promjene endpointa. Neka jedan sloj upravlja rutom i njezinim vjerodajnicama zajedno.

Redoslijed odabira i zadane vrijednosti

Ako prilagođeni downloader middleware odabire proksi, pokrenite ga prije nego ugrađeni proxy middleware obradi zahtjev. Provjerite redoslijed i API instalirane verzije; zastarjeli scrapy.contrib uvozi pripadaju starijim verzijama.

Okruženje procesa također može dati zadane vrijednosti specifične za shemu. Za namjerno izravan zahtjev upotrijebite dokumentirano posebno ponašanje metapodataka proxy: odsutan ključ ne znači nužno izravan pristup.

Provjerite stvarni ishod. 407 se odnosi na autentifikaciju proksija, dok ograničenje brzine ili odbijanje pristupa web stranice mogu doći nakon što je ruta ispravno radila.

Povezani članci