Scrapy-യുടെ HTTP പ്രോക്സി മിഡിൽവെയർ ഉപയോഗിച്ച് ഓരോ അഭ്യർത്ഥനയ്ക്കും പ്രോക്സികൾ
ഒരു ക്രോളറിലേക്ക് പഴയ കസ്റ്റം ഓതന്റിക്കേഷൻ മിഡിൽവെയർ പകർത്തുന്നതിന് മുമ്പ് Scrapy അഭ്യർത്ഥന മെറ്റാഡാറ്റയും അതിന്റെ പ്രോക്സി മിഡിൽവെയറും ഉപയോഗിക്കുക.
Scrapy-യുടെ HTTP പ്രോക്സി മിഡിൽവെയർ അഭ്യർത്ഥന മെറ്റാഡാറ്റയിൽ നിന്ന് പ്രോക്സി വായിക്കുന്നു:
yield scrapy.Request(
'https://example.com/',
callback=self.parse,
meta={'proxy': 'http://203.0.113.10:8080'},
)
ഡോക്യുമെന്റേഷനിലെ എൻഡ്പോയിന്റ് മാറ്റി മിഡിൽവെയർ പ്രവർത്തനക്ഷമമായി വയ്ക്കുക. HTTP പ്രോക്സി ലിസ്റ്റ് ഈ അഭ്യർത്ഥന URL-ന് പൊതു സ്ഥാനാർത്ഥികൾ നൽകുന്നു. ഇത് അഭ്യർത്ഥനയുടെ റൂട്ട് തിരഞ്ഞെടുക്കുന്നു; പ്രോക്സി പൂളിന് വേറിട്ട തിരഞ്ഞെടുപ്പ് ലോജിക് ആവശ്യമാണ്.
ഓതന്റിക്കേഷൻ തിരഞ്ഞെടുത്ത എൻഡ്പോയിന്റിനെ പിന്തുടരുന്നു
ബിൽറ്റ്-ഇൻ മിഡിൽവെയർ അതിന്റെ പിന്തുണയുള്ള പ്രോക്സി URL-ഉം ബന്ധപ്പെട്ട അധികാര ഹെഡറും വഴി നൽകുന്ന ക്രെഡൻഷ്യലുകൾ കൈകാര്യം ചെയ്യുന്നു. റിസർവ്ഡ് URL പ്രതീകങ്ങൾ escape ചെയ്യുക, ആ URL ലോഗ് ചെയ്യുന്നത് ഒഴിവാക്കുക.
എൻഡ്പോയിന്റ് മാറിയതിന് ശേഷം വേറിട്ട മിഡിൽവെയർ മുൻ പ്രോക്സിക്കുള്ള Basic ഹെഡർ നിലനിർത്തരുത്. ഒരു പാളി റൂട്ടും അതിന്റെ ക്രെഡൻഷ്യലുകളും ഒരുമിച്ച് കൈകാര്യം ചെയ്യട്ടെ.
തിരഞ്ഞെടുപ്പ് ക്രമവും സ്ഥിരസ്ഥിതികളും
കസ്റ്റം ഡൗൺലോഡർ മിഡിൽവെയർ പ്രോക്സി തിരഞ്ഞെടുക്കുന്നുവെങ്കിൽ, ബിൽറ്റ്-ഇൻ പ്രോക്സി മിഡിൽവെയർ അഭ്യർത്ഥന പ്രോസസ്സ് ചെയ്യുന്നതിന് മുമ്പ് അത് പ്രവർത്തിപ്പിക്കുക. ഇൻസ്റ്റാൾ ചെയ്ത റിലീസിന്റെ ക്രമവും API-യും പരിശോധിക്കുക; കാലഹരണപ്പെട്ട scrapy.contrib ഇംപോർട്ടുകൾ പഴയ റിലീസുകളുടേതാണ്.
പ്രോസസ്സ് എൻവയോൺമെന്റിന് സ്കീം-നിർദ്ദിഷ്ട സ്ഥിരസ്ഥിതികളും നൽകാം. ബോധപൂർവം നേരിട്ടുള്ള അഭ്യർത്ഥനയ്ക്ക് രേഖപ്പെടുത്തിയ പ്രത്യേക proxy മെറ്റാഡാറ്റ സ്വഭാവം ഉപയോഗിക്കുക: കീ ഇല്ലാത്തത് എപ്പോഴും നേരിട്ടുള്ള ആക്സസ് അർത്ഥമാക്കില്ല.
യഥാർത്ഥ ഫലം പരിശോധിക്കുക. 407 പ്രോക്സി ഓതന്റിക്കേഷനെക്കുറിച്ചാണ്, അതേസമയം വെബ്സൈറ്റിന്റെ നിരക്ക് പരിധിയോ ആക്സസ് നിരാകരണമോ റൂട്ട് ശരിയായി പ്രവർത്തിച്ചതിന് ശേഷം വരാം.