Isicelo se-Scrapy singafinyelela ku-Splash, kodwa isiphequluli esingaphakathi kwe-Splash sisadinga umzila ohlukile wokuphuma. Lezi yizixhumanisi ezimbili:

Scrapy → Splash API
Splash browser → forward proxy → website

Ukuze kube ne-proxy eyodwa nge-render ngayinye, dlulisa i-proxy argument ye-HTTP API. I-Splash 3.5 ibhala i-proxy URL efana ne-http://proxy.example:8080, noma igama le-proxy-profile elilungisiwe. Ifomethi yayo ye-URL iphinde isekele i-SOCKS5 kanye nobufakazi obukhethekile.

Lapho izinsiza zekhasi ngazinye zidinga iziphetho ezihlukene, sebenzisa i-execute script futhi ubhalise ukukhetha ngaphambi kokuzulazula:

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()
end

Dlulisa i-default_proxy ne-special_proxy njengamagama e-host, kanye ne-special_resource njenge-URL eqondile yensiza okufanele ihlelwe ngokwehlukana. Shintsha iphothi elilodwa lesibonelo lapho izilaleli ezimbili zihlukene. Ezinye izinsiza zithola umzila ozenzakalelayo. Uhlu lwe-proxy ye-HTTP lunikeza abangeneleli beziphetho kulezi zinkambu ze-host nephothi lapho imizila eya ezinsizeni zomphakathi ivunyelwe futhi kungekho bufakazi be-proxy obusetshenziswa kubangeneleli.

Indlela ye-request yamukela izinkambu ezikhethekile ze-username ne-password. Ngohlobo lwe-HTTP, izindawo ze-HTTPS zisebenzisa i-CONNECT ngaleyo proxy ye-HTTP; azidingi uhlobo lwe-proxy ye-HTTPS oluqanjiwe.

I-callback isebenza ngaphambi kwesicelo ngasinye. Izindlela zayo ze-request azikwazi ukushintsha isicelo ngemva kokuba sithunyelwe, futhi i-callback ayikwazi ukushaya izindlela ze-Splash ezingalindelekile njenge-splash:go noma i-splash:wait.

Gcina ukukhetha komzila kuzinzile lapho ikhasi lilindele iseshini eyodwa noma ubunikazi bomthombo owodwa. Ukwabela isithombe ngasinye nesicelo se-API ngokungahleliwe kwenye indawo yokuphuma kungakhiqiza ikhasi elirenderiwe izicelo zalo ezingasayona ingxenye yeseshini eyodwa ehambisanayo.

Izihloko ezihlobene