Փրոքսի մեկ fetch-ի համար Scrapy shell-ում
Օգտագործեք Request-ի փրոքսի մետատվյալները Scrapy shell-ի ներսում և ստուգեք այդ կարգավորված հարցման պատասխանը։
Scrapy shell-ի ներսում կառուցեք այն հարցումը, որը ցանկանում եք, որ կատարի ներբեռնիչը.
from scrapy import Request
fetch(Request(
"https://www.example.com/",
meta={"proxy": "http://proxy.example:8080"},
))
response.status
HttpProxyMiddleware-ը կարդում է փրոքսիի արժեքը այդ Request-ի մետատվյալներից։ Այն պետք է լինի միացված ակտիվ ներբեռնիչի middleware-ի կարգավորումներում։ Դրանից հետո response փոփոխականը պատկանում է այս fetch-ին։ Այս հանրային URL-ի համար ընտրեք առանց նույնականացման HTTP հասցե HTTP փրոքսիների ցանկից, եթե հանրային միջնորդները թույլատրված են, ապա տեղադրեք դրա URL-ը այդ հարցման փրոքսի մետատվյալներում։
Shell-ը Scrapy նախագծից գործարկելը թույլ է տալիս նրան բեռնել այդ նախագծի կարգավորումները։ Դա ընտրում է middleware և այլ պարամետրեր. այն ինքը չի ընտրում կոնկրետ փրոքսի վերջնակետ։ Վերևի հարցման մետատվյալները տրամադրում են այդ ընտրությունը ուղղակիորեն։
Basic հավատարմագրեր օգտագործող փրոքսիի համար Scrapy-ն փաստաթղթավորում է օգտվողի տվյալները փրոքսիի URL-ում։ Կոդավորեք արգելված նշանները հաշվի բաղադրիչներում մինչև այն կառուցելը։ Այդ հաշվի համար կայքի Authorization վերնագիր ավելացնելու կարիք չկա։
Scrapy-ն կարող է նաև փրոքսիներ գտնել իր աջակցվող միջավայրի փոփոխականներից։ Հարցման բացահայտ փրոքսի մետատվյալներն առաջնահերթություն ունեն։ Միտումնավոր ուղղակի հարցման համար None փրոքսի արժեքը անջատում է այդ middleware-ի միջավայրի վրա հիմնված ընտրությունը հարցման համար։