Her Splash kaynağı için bir proxy seçin
Tek tek kaynaklar farklı rotalara ihtiyaç duyduğunda proxy'yi işleme düzeyinde veya bir on_request geri çağrısında seçin.
Bir Scrapy isteği Splash'e ulaşabilir, ancak Splash içindeki tarayıcı hâlâ farklı bir giden rotaya ihtiyaç duyar. Bunlar iki bağlantıdır:
Scrapy → Splash API
Splash browser → forward proxy → websiteİşleme başına tek proxy için HTTP API'nin proxy bağımsız değişkenini geçirin. Splash 3.5, http://proxy.example:8080 gibi bir proxy URL'sini veya yapılandırılmış bir proxy profili adını belgeler. URL biçimi ayrıca SOCKS5 ve isteğe bağlı kimlik bilgilerini destekler.
Tek tek sayfa kaynakları farklı uç noktalara ihtiyaç duyduğunda bir execute betiği kullanın ve seçimi gezinmeden önce kaydedin:
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()
enddefault_proxy ve special_proxy değerlerini ana bilgisayar adı olarak, special_resource değerini ise ayrı yönlendirilecek kaynağın tam URL'si olarak geçirin. İki dinleyici farklı olduğunda örnekteki tek bağlantı noktasını değiştirin. Diğer kaynaklar varsayılan rotayı alır. HTTP proxy listesi, genel kaynaklara rotalara izin verildiğinde ve adaylara proxy kimlik bilgileri uygulanmadığında bu ana bilgisayar ve bağlantı noktası alanları için uç nokta adayları sunar.
request yöntemi isteğe bağlı username ve password alanlarını kabul eder. HTTP türüyle HTTPS hedefleri bu HTTP proxy üzerinden CONNECT kullanır; uydurma bir HTTPS proxy türüne ihtiyaç duymazlar.
Geri çağrı her istekten önce çalışır. request yöntemleri gönderilmiş bir isteği değiştiremez ve geri çağrı splash:go veya splash:wait gibi eşzamansız Splash yöntemlerini çağıramaz.
Sayfa tek bir oturum veya tek bir kaynak kimliği beklediğinde rota seçimini sabit tutun. Her görüntüyü ve API isteğini rastgele başka bir çıkışa atamak, istekleri artık tek bir tutarlı oturuma ait olmayan işlenmiş bir sayfa üretebilir.