A Scrapy shellben építse fel a kérést, amelyet a letöltő végrehajtson:

from scrapy import Request

fetch(Request(
    "https://www.example.com/",
    meta={"proxy": "http://proxy.example:8080"},
))
response.status

A HttpProxyMiddleware a proxy értékét az adott Request metaadataiból olvassa ki. Engedélyezve kell lennie az aktív letöltő middleware konfigurációjában. A response változó utána ehhez a lekéréshez tartozik. Ehhez a nyilvános URL-hez válasszon hitelesítés nélküli HTTP-címet a HTTP proxy listából, ha a nyilvános közvetítők engedélyezettek, majd helyezze annak URL-jét a kérés proxy-metaadataiba.

A shell Scrapy-projektből való indítása lehetővé teszi a projekt konfigurációjának betöltését. Ez middleware-t és egyéb beállításokat választ; önmagában nem választ konkrét proxy-végpontot. A fenti kérés-metaadatok közvetlenül biztosítják ezt a választást.

A Basic hitelesítő adatokat használó proxy esetében a Scrapy a felhasználói adatokat a proxy URL-jében dokumentálja. A fiók-összetevőkben lévő fenntartott karaktereket kódolja a felépítés előtt. Ehhez a fiókhoz nem kell Authorization fejlécet hozzáadni a webhelyhez.

A Scrapy a támogatott környezeti változókból is felderíthet proxykat. Egy kérés kifejezett proxy-metaadatai elsőbbséget élveznek. Egy szándékosan közvetlen kérés esetén a None proxyérték letiltja az adott middleware környezetalapú kiválasztását a kérésre.

Kapcsolódó cikkek