Dewiswch asiant ar gyfer pob adnodd Splash
Dewiswch asiant Splash ar lefel rendro neu mewn galwad yn ôl on_request pan fo angen llwybrau gwahanol ar adnoddau unigol.
Gall cais Scrapy gyrraedd Splash yn llwyddiannus tra bo'r porwr y tu mewn i Splash yn dal i fod angen llwybr allan gwahanol. Dau gysylltiad yw'r rhain:
Scrapy → Splash API
Splash browser → forward proxy → websiteAr gyfer un asiant fesul render, trosglwyddwch ddadl proxy yr API HTTP. Mae Splash 3.5 yn dogfennu URL asiant fel http://proxy.example:8080, neu enw proffil asiant wedi'i ffurfweddu. Mae ei fformat URL hefyd yn cefnogi SOCKS5 a chredydau dewisol.
Pan fo angen pwyntiau terfyn gwahanol ar adnoddau tudalen unigol, defnyddiwch sgript execute a chofnodwch y dewis cyn llywio:
function main(splash, args)
splash:on_request(function(request)
local host = args.default_proxy
if request.url == args.special_resource then
host = args.special_proxy
end
request:set_proxy{host = host, port = 8080, type = 'HTTP'}
end)
assert(splash:go(args.url))
return splash:html()
endTrosglwyddwch default_proxy a special_proxy fel enwau gwesteiwyr, a special_resource fel URL uniongyrchol yr adnodd sydd i'w lwybro ar wahân. Amnewidiwch y porth unigol yn yr enghraifft pan fo'r ddau wrandawr yn wahanol. Mae adnoddau eraill yn cael y llwybr diofyn. Mae'r rhestr asiantau HTTP yn cynnig ymgeiswyr pwynt terfyn ar gyfer y meysydd gwesteiwr a phorth hyn pan ganiateir llwybrau adnoddau cyhoeddus ac nad yw credydau asiant yn cael eu cymhwyso i'r ymgeiswyr.
Mae'r dull request yn derbyn meysydd username a password dewisol. Gyda'r math HTTP, mae cyrchfannau HTTPS yn defnyddio CONNECT drwy'r asiant HTTP hwnnw; nid oes angen math asiant HTTPS dyfeisiedig arnynt.
Mae'r alwad yn ôl yn rhedeg cyn pob cais. Ni all ei ddulliau request newid cais ar ôl iddo gael ei anfon, ac ni all yr alwad yn ôl alw dulliau asyncronaidd Splash fel splash:go neu splash:wait.
Cadwch ddewis llwybr yn sefydlog pan fo'r dudalen yn disgwyl un sesiwn neu un hunaniaeth ffynhonnell. Gall neilltuo pob delwedd a chais API ar hap i allanfa arall gynhyrchu tudalen wedi'i rendro nad yw ei cheisiadau bellach yn perthyn i un sesiwn gydlynol.