Darllen pwynt terfyn proxy a IP cysylltiad Scrapy
Defnyddiwch fetadata'r cais ar gyfer y proxy a ddewiswyd, triniwch response.ip_address fel gwybodaeth cymar a ddarperir gan y trefnydd, a gwirio'r IP allan yn y cyrchfan.
Defnyddiwch y Request sydd ynghlwm wrth yr ymateb gorffenedig wrth archwilio ei lwybr a ddewiswyd. Cadwch dri arsylwad ar wahân:
| Maes | Ystyr |
|---|---|
response.request.meta.get('proxy') | URL y proxy a ddewiswyd ar gyfer y cais hwn, pan fo'n bresennol |
response.ip_address | Cyfeiriad a ddarperir gan y trefnydd lawrlwytho, o bosibl None |
| Adroddiad ffynhonnell o gyrchfan ymddiriedus | Y ffynhonnell gyhoeddus a arsylwyd yno |
Y tu mewn i callback, hepgorwch rannau URL sy'n cario manylion mewngofnodi o ddiagnosteg arferol:
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,
)Yn nhriniwr HTTP/1.1 Scrapy 2.13.3 daw'r cyfeiriad o gymar cysylltiad yr ymateb, nid o wasanaeth IP allan. Gall rhai llwybrau, gan gynnwys ymatebion o hyd sero, ei adael yn None. Gall trinwyr eraill ei lenwi'n wahanol. Nid yw None ynddo'i hun yn profi llwybro uniongyrchol.
Ar gyfer gwiriad allan, holwch bwynt terfyn ymddiriedus o dan y polisi proxy arfaethedig a chadwch unfathiaeth y cais gyda'r arsylwad. Gall middleware cylchdroi roi pwynt terfyn arall i wiriad diweddarach.
Mae ailgyfeiriadau yn creu cais arall hefyd. Mae'r metadata terfynol yn disgrifio'r cam hwnnw; archwiliwch hanes ailgyfeirio ac unrhyw ailddewis gan middleware yn lle ei drin fel prawf o lwybr yr URL cyntaf.