Starpniekserveri katram pieprasījumam ar Scrapy HTTP starpniekservera starpprogrammatūru
Izmantojiet Scrapy pieprasījumu metadatus un tā starpniekservera starpprogrammatūru, pirms kopējat vecu pielāgotu autentifikācijas starpprogrammatūru pārlūkā.
Scrapy HTTP starpniekservera starpprogrammatūra nolasa starpniekserveri no pieprasījuma metadatiem:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
Aizstājiet dokumentācijas galapunktu un atstājiet starpprogrammatūru iespējotu. HTTP starpniekserveru saraksts piedāvā publiskus kandidātus šī pieprasījuma URL. Tas izvēlas pieprasījuma maršrutu; starpniekserveru kopai nepieciešama atsevišķa atlases loģika.
Autentifikācija seko izvēlētajam galapunktam
Iebūvētā starpprogrammatūra apstrādā akreditācijas datus, kas nodrošināti ar tās atbalstīto starpniekservera URL un saistīto autorizācijas galveni. Aizbēdziet rezervētās URL rakstzīmes un izvairieties no šī URL reģistrēšanas.
Atsevišķai starpprogrammatūrai pēc galapunkta maiņas nevajadzētu saglabāt Basic galveni iepriekšējam starpniekserverim. Ļaujiet vienam slānim pārvaldīt maršrutu un tā akreditācijas datus kopā.
Atlases secība un noklusējumi
Ja pielāgota lejupielādes starpprogrammatūra izvēlas starpniekserveri, palaidiet to pirms iebūvētās starpniekservera starpprogrammatūras pieprasījuma apstrādes. Pārbaudiet instalētās versijas secību un API; novecojuši scrapy.contrib importi pieder vecākām versijām.
Procesa vide var arī nodrošināt shēmai raksturīgus noklusējumus. Apzināti tiešam pieprasījumam izmantojiet dokumentēto īpašo proxy metadatu uzvedību: trūkstoša atslēga ne vienmēr nozīmē tiešu piekļuvi.
Pārbaudiet faktisko rezultātu. 407 attiecas uz starpniekservera autentifikāciju, savukārt vietnes ātruma ierobežojums vai piekļuves atteikums var pienākt pēc tam, kad maršruts ir strādājis pareizi.