Scrapy shell-ൽ ഒരു ഫെച്ചിനുള്ള പ്രോക്സി
Scrapy shell-നുള്ളിൽ Request-ന്റെ പ്രോക്സി മെറ്റാഡാറ്റ ഉപയോഗിച്ച് ആ കോൺഫിഗർ ചെയ്ത അഭ്യർത്ഥനയുടെ പ്രതികരണം പരിശോധിക്കുക.
Scrapy shell-നുള്ളിൽ, ഡൗൺലോഡർ നടപ്പാക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്ന അഭ്യർത്ഥന നിർമ്മിക്കുക:
from scrapy import Request
fetch(Request(
"https://www.example.com/",
meta={"proxy": "http://proxy.example:8080"},
))
response.status
HttpProxyMiddleware ആ Request-ന്റെ മെറ്റാഡാറ്റയിൽ നിന്ന് പ്രോക്സി മൂല്യം വായിക്കുന്നു. അത് സജീവ ഡൗൺലോഡർ മിഡിൽവെയർ കോൺഫിഗറേഷനിൽ പ്രവർത്തനക്ഷമമായിരിക്കണം. തുടർന്നുള്ള response വേരിയബിൾ ഈ ഫെച്ചിന്റേതാണ്. ഈ പൊതു URL-നായി, പൊതു ഇടനിലക്കാർ അനുവദനീയമാണെങ്കിൽ HTTP പ്രോക്സി പട്ടികയിൽ നിന്ന് പ്രാമാണീകരണമില്ലാത്ത HTTP വിലാസം തിരഞ്ഞെടുത്ത്, അതിന്റെ URL ആ അഭ്യർത്ഥനയുടെ പ്രോക്സി മെറ്റാഡാറ്റയിൽ ഇടുക.
Scrapy പ്രോജക്റ്റിൽ നിന്ന് shell ആരംഭിക്കുന്നത് ആ പ്രോജക്റ്റിന്റെ കോൺഫിഗറേഷൻ ലോഡ് ചെയ്യാൻ അനുവദിക്കുന്നു. അത് മിഡിൽവെയറും മറ്റ് ക്രമീകരണങ്ങളും തിരഞ്ഞെടുക്കുന്നു; അത് സ്വയം ഒരു നിർദ്ദിഷ്ട പ്രോക്സി എൻഡ്പോയിന്റ് തിരഞ്ഞെടുക്കുന്നില്ല. മുകളിലെ അഭ്യർത്ഥന മെറ്റാഡാറ്റ ആ തിരഞ്ഞെടുപ്പ് നേരിട്ട് നൽകുന്നു.
Basic ക്രെഡൻഷ്യലുകൾ ഉപയോഗിക്കുന്ന പ്രോക്സിക്ക്, Scrapy പ്രോക്സി URL-ൽ ഉപയോക്തൃ വിവരങ്ങൾ രേഖപ്പെടുത്തുന്നു. അത് നിർമ്മിക്കുന്നതിന് മുമ്പ് അക്കൗണ്ട് ഘടകങ്ങളിലെ റിസർവ് ചെയ്ത പ്രതീകങ്ങൾ എൻകോഡ് ചെയ്യുക. ആ അക്കൗണ്ടിനായി വെബ്സൈറ്റിന്റെ Authorization ഹെഡർ ചേർക്കേണ്ടതില്ല.
Scrapy അതിന്റെ പിന്തുണയുള്ള പരിസ്ഥിതി വേരിയബിളുകളിൽ നിന്നും പ്രോക്സികൾ കണ്ടെത്താനാകും. ഒരു അഭ്യർത്ഥനയുടെ വ്യക്തമായ പ്രോക്സി മെറ്റാഡാറ്റയ്ക്ക് മുൻഗണനയുണ്ട്. ബോധപൂർവം നേരിട്ടുള്ള അഭ്യർത്ഥനയ്ക്ക്, None പ്രോക്സി മൂല്യം ആ മിഡിൽവെയറിന്റെ പരിസ്ഥിതി അടിസ്ഥാനമാക്കിയുള്ള തിരഞ്ഞെടുപ്പ് അഭ്യർത്ഥനയ്ക്ക് പ്രവർത്തനരഹിതമാക്കുന്നു.