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 метадеректерінен оқиды. Ол белсенді жүктеуші middleware конфигурациясында қосылған болуы керек. Кейінгі response айнымалысы осы сұрауға тиесілі. Бұл жалпыға ашық URL үшін, егер жалпыға ашық делдалдар рұқсат етілсе, HTTP прокси тізімінен аутентификациясыз HTTP мекенжайын таңдап, оның URL-ін сол сұраудың прокси метадеректеріне орналастырыңыз.
Shell-ді Scrapy жобасынан іске қосу оған сол жобаның конфигурациясын жүктеуге мүмкіндік береді. Бұл middleware және басқа параметрлерді таңдайды; ол өзі нақты прокси соңғы нүктесін таңдамайды. Жоғарыдағы сұрау метадеректері бұл таңдауды тікелей қамтамасыз етеді.
Basic тіркелгі деректерін қолданатын прокси үшін Scrapy пайдаланушы ақпаратын прокси URL-інде құжаттайды. Оны құру алдында тіркелгі бөліктеріндегі қорғалған таңбаларды кодтаңыз. Сол тіркелгі үшін веб-сайттың Authorization тақырыбын қосудың қажеті жоқ.
Scrapy сонымен қатар өзі қолдайтын орта айнымалыларынан проксилерді таба алады. Сұраудың нақты прокси метадеректері басымдыққа ие. Әдейі тікелей сұрау үшін None прокси мәні сол middleware-тің ортаға негізделген таңдауын сұрау үшін өшіреді.