Proxy-GET getur náð til þjóns og fylgt síðan endurbeiningum þar til endanleg bilun hylur fyrsta svarið. Gerðu það upphafssvar sýnilegt fyrir greiningu:

request = scrapy.Request(
    'https://service.example/page',
    callback=inspect_redirect,
    meta={
        'proxy': 'http://proxy.example:8080',
        'dont_redirect': True,
        'handle_httpstatus_list': [301, 302, 303, 307, 308],
    },
)

Tímasettu þessa beiðni í gegnum núverandi start- eða callback-flæði köngulósins. Fyrir leyfilega prófun á opinberri síðu býður HTTP-proxylistinn frambjóðendur fyrir proxy-URL beiðninnar. inspect_redirect ætti að skrá stöðu svarsins og Location-hausinn í stað þess að fylgja henni aftur blindandi.

dont_redirect stöðvar sjálfvirka endurbeiningu fyrir þessa beiðni. handle_httpstatus_list lætur tilgreindar stöður ná callbackinu í stað þess að síun HTTP-villna hafni þeim. Stillingarnar varða mismunandi ábyrgð middleware.

Athugaðu hvað endurbeiningin velur: ætlað kanónískt URL, annað kerfi eða hýsingarheiti, innskráningarsíðu eða endurtekna lotu. 302 sem berst eftir árangursríka flutninga er önnur athugun en að mistakast að opna proxy-tenginguna.

Þegar venjulegri meðhöndlun endurbeininga er komið aftur á, sýnir Scrapy redirect_urls og redirect_reasons í lýsigögnum beiðninnar í svarinu. Þau geta varðveitt leiðina að endanlegri niðurstöðu án þess að endurbeiningar séu óvirkar alla skriðuna.

Endanlegt svar er ekki sjálfkrafa síðan sem forritið ætlaði. Haltu áfangastaðnum og innihaldi svarsins við leiðagreininguna.

Tengdir greinar