Dèan a-rithist GET Scrapy tro phroxy eile
Cleachd neach-cuideachaidh ath-oidhirp Scrapy gus iarrtas ùr a chlàradh le proxy ùr fhad 's a bheirear urram do bhuidseat nan ath-oidhirpean.
Le bhith ag atharrachadh response.request.meta tha thu ag atharrachadh nì Python. Airson luchdadh eile a dhèanamh, feumaidh tu Request eile a thoirt do Scrapy ri chlàradh.
Airson GET a cho-dhùineas do callback gu soilleir ath-oidhirp a dhèanamh, faodaidh neach-cuideachaidh poblach ath-oidhirp Scrapy an cunntas ath-oidhirp a chumail leis an iarrtas ùr:
from scrapy.downloadermiddlewares.retry import get_retry_request
def retry_through(self, response, proxy_url):
retry = get_retry_request(
response.request,
spider=self,
reason='choose_another_proxy',
)
if retry is None:
return None
retry.meta['proxy'] = proxy_url
retry.headers.pop('Proxy-Authorization', None)
return retry
Is neach-cuideachaidh spider a tha seo. Feumaidh an neach-gairm an Request a thig às a thilleadh no a yieldadh nuair a bhios fear ri fhaighinn. Tha None a' ciallachadh gun do dhiùlt an neach-cuideachaidh ath-oidhirp eile fo na crìochan a tha iomchaidh.
Bidh neach-cuideachaidh ath-oidhirp a' dèanamh lethbhreac den iarrtas, ag ùrachadh a chunntair ath-oidhirp agus a' solar a' ghiùlain clàraidh a tha freagarrach airson ath-oidhirp. Ma nì thu dìreach an aon URL a yieldadh mar iarrtas ùr àbhaisteach, faodaidh tu filteradh dhùbailtean a thachairt na àite.
Cleachd URL proxy a tha an HttpProxyMiddleware gnìomhach a' cur taic ris. Airson ath-oidhirpean de dh'iarrtasan GET poblach a tha ceadaichte, faodaidh tagraiche HTTP gun dearbhadh bhon liosta proxy HTTP proxy_url a sholar. Le bhith a' glanadh raon proxy-authorization a chaidh a cheangal roimhe seo, seachar a bhith a' giùlan ceann-loidhne seann eadar-mheadhanaiche a-steach don taghadh seo; leig leis a' mheadhan-bathar an cunntas ùr a thoirt bhon URL proxy ùr nuair a tha sin iomchaidh.
Cùm an taghadh seo aig ìre callback air leth bho làimhseachadh fèin-ghluasadach RetryMiddleware air na fàillighean a chaidh a rèiteachadh aige. Co-dhùin cò aig a tha an ath-oidhirp gus nach caithear dà bhuidseat neo-eisimeileach. Tha an eisimpleir mu obair GET a ghabhas ath-chluich, chan e gealladh gu bheil ath-aithris gnothaich a chaidh a chuir a-steach gu treallach sàbhailte.