Günlüğünüz proxy'leri döndürür. İsteğiniz hâlâ eskisini kullanıyor.
Yeni bir değer yazdırmanın isteğin yapılandırmasını değiştirdiğini varsaymak yerine, seçilen uç noktayı gerçek HTTP gönderme çağrısına kadar izleyin.
Seçici proxy A'yı, ardından proxy B'yi yazdırır. Ancak istek günlüğü hâlâ proxy A'yı gösterir. Bu çelişkiyi açıklamak için ağ hizmetine gerek yok: çağıran taraf seçicinin döndürdüğü değeri atmış olabilir.
Değeri isteği gönderen çağrıya kadar izleyin:
endpoint = choose_proxy()
routes = {'http': endpoint, 'https': endpoint}
response = session.get(target_url, proxies=routes, timeout=15)
Bu parça, var olan bir Requests oturumu ve doğrulanmış bir proxy URL'si varsayar. Genel aracılar üzerinden izin verilen genel istekler için ücretsiz proxy listesi, aynı seçme ve gönderme yolundan geçen aday URL'ler sunar. Desteklenen anahtar sözcük proxies. Yalnızca bir eşleme yazdıran ya da kimsenin atamadığı bir eşlemeyi döndüren yardımcı, burada verilen eşlemenin yerini alamaz.
Seçilen rotayı işlemin yereline hapsedin. Eşzamanlı kodda paylaşılan bir current_proxy alanı, günlüğe kaydetme ile gönderme arasında değişebilir. O zaman başka bir işçinin seçimi yanlış sonucun yanında görünebilir.
Seçimi, gönderme yapılandırmasını ve sonucu bağlamak için bir deneme tanımlayıcısı kullanın. Tam URL kimlik bilgileri içeriyorsa, onun yerine güvenli bir uç nokta tanımlayıcısı kaydedin.
Bu değerler uyuşuyor ama gözlenen genel IP değişmiyorsa başka bir soruya geldiniz: seçilen uç noktalar farklı çıkışlar mı sunuyor yoksa dönen bir geçit bağlantıyı mı koruyor. Önce uygulamanın seçtiğini iddia ettiği rotayı gerçekten gönderip göndermediğini belirleyin. Aksi hâlde sağlayıcı tarafındaki tahminler basit bir eski değişkeni saatlerce gizleyebilir.