Kusoma kituo cha mwisho cha proksi na IP ya muunganisho katika Scrapy
Tumia metadata ya ombi kwa proksi iliyochaguliwa, chukulia response.ip_address kama taarifa ya mwenzake kutoka kwa handler, na thibitisha IP ya kutoka mahali unakoenda.
Ili kuchunguza njia iliyochaguliwa, tumia Request iliyounganishwa na jibu lililokamilika. Weka uchunguzi tatu kando:
| Sehemu | Maana |
|---|---|
response.request.meta.get('proxy') | URL ya proksi iliyochaguliwa ya ombi hili, ikiwepo |
response.ip_address | Anwani inayotolewa na handler ya upakuaji, huenda None |
| Ripoti ya chanzo kutoka mahali panapotegemewa | Chanzo cha umma kilichoonekana hapo |
Ndani ya callback, acha sehemu za URL zilizo na vitambulisho vya kuingia kwenye uchunguzi wa kawaida:
from urllib.parse import urlsplit
proxy = response.request.meta.get('proxy')
proxy_host = urlsplit(proxy).hostname if proxy else None
self.logger.info(
'target_host=%s proxy_host=%s peer_ip=%s',
urlsplit(response.url).hostname, proxy_host, response.ip_address,
)Katika handler ya HTTP/1.1 ya Scrapy 2.13.3 anwani hutoka kwa mwenzake wa muunganisho wa jibu, si kwa huduma ya IP ya kutoka. Njia zingine, ikiwa ni pamoja na majibu ya urefu sifuri, zinaweza kuiacha None. Handler nyingine zinaweza kuijaza kwa namna tofauti. None yenyewe haithibitishi uelekezaji wa moja kwa moja.
Kwa ukaguzi wa kutoka, uliza kituo cha mwisho kinachotegemewa chini ya sera ya proksi inayokusudiwa na hifadhi utambulisho wa ombi pamoja na uchunguzi. Middleware inayozunguka inaweza kutoa kituo kingine kwa ukaguzi wa baadaye.
Uelekezaji upya pia huunda ombi lingine. Metadata ya mwisho inaeleza hatua hiyo; chunguza historia ya uelekezaji upya na uchaguzi wowote mpya wa middleware badala ya kuichukulia kama uthibitisho wa njia ya URL ya kwanza.