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 ப்ராக்ஸி மதிப்பு அந்த மிடில்வேரின் சூழல் அடிப்படையிலான தேர்வைக் கோரிக்கைக்கு முடக்குகிறது.