karanlık proxyscrape logo

Python'da İstekler Modülü ile Proxy Nasıl Kullanılır

Kılavuzlar, Nasıl yapılır, Proxyler, Mar-03-20225 dakika okuma

Every computer gets a unique Internet Protocol (IP) address that identifies the computer and its geographic location when connected to the Internet. Your computer sends out a request whenever it needs any information from the Internet. The request is sent to a target computer that checks the type of information being asked for. The target

Her bilgisayar, İnternet'e bağlandığında bilgisayarı ve coğrafi konumunu tanımlayan benzersiz bir İnternet Protokolü(IP) adresi alır. Bilgisayarınız İnternet'ten herhangi bir bilgiye ihtiyaç duyduğunda bir istek gönderir. İstek, istenen bilginin türünü kontrol eden bir hedef bilgisayara gönderilir. Hedef bilgisayar, IP adresimize vermesine izin verilirse bilgiyi geri gönderir. Bazen bilgisayar, kimliği tespit edilmeden İnternet'ten bilgi almak ister. Bu bilgi genellikle engellenir, ancak istemci ile sunucu makine arasında aracı görevi gören bir proxy kullanarak bu bilgiyi alabiliriz.

Her proxy sunucusunun kendi IP adresi vardır, bu nedenle bir kullanıcı bir web sitesine erişmek için bir proxy aracılığıyla talepte bulunduğunda, web sitesi verileri kullanıcıya ileten proxy sunucusu IP'sine gönderir.

  • Proxy'ler web kazıyıcılarının kimliğini gizler ve trafiklerinin normal kullanıcı trafiği gibi görünmesini sağlar.
  • Proxy'ler web sitelerine ek güvenlik sağlar ve internet trafiğini dengeler.
  • Proxy'ler web kullanıcılarının verilerini korur veya bir ülkenin sansür mekanizması tarafından engellenen web sitelerine erişmeye yardımcı olur.

Python'da İstekler Modülü ile Proxy Kullanımı

Python istekleri ile proxy kullanmak için aşağıdaki adımları izlemeniz gerekir.

İthalat talepleri

Basit bir HTTP kütüphanesi olan requests paketini içe aktarın. URL'lerinize manuel olarak sorgu dizeleri eklemeden bu paket aracılığıyla kolayca istek gönderebilirsiniz. Aşağıdaki komutu kullanarak istekleri içe aktarabilirsiniz.

i̇thalat talepleri̇

Sözlük Oluşturma

HTTP ve HTTPS bağlantılarını tanımlayan bir proxies sözlüğü oluşturmanız gerekir. Sözlük değişkenine, bir protokolü proxy URL'sine eşleyen "proxies" gibi herhangi bir ad verebilirsiniz. Ayrıca, URL değişkenini kazımanız gereken web sitesine ayarlamanız gerekir.

proxies = {
  "http":'http://203.190.46.62:8080',
  "https":'https://111.68.26.237:8080'
}
url = 'https://httpbin.org/ip'

Burada sözlük, HTTP ve HTTPS gibi iki ayrı protokol için proxy URL'sini tanımlar.

Yanıt Değişkeni Oluşturma

İstek yöntemlerinden herhangi birini kullanan bir yanıt değişkeni oluşturmanız gerekir. Bu yöntem iki argüman alır:

  • Oluşturduğunuz URL
  • Tanımladığınız sözlük
response = requests.get(url,proxies = proxies)
print(response.json())

Çıktı şu şekildedir:

IP adreslerini aşağıda gösterildiği gibi döndürmek için Python'daki requests modülünü de kullanabilirsiniz.

Aşağıdaki komutu kullanarak requests modülünü içe aktarmanız gerekir.

i̇thalat talepleri̇

sending_request işlevini oluşturun

Bir sending_request fonksiyonu oluşturmanız ve çoğu ücretsiz proxy https protokolünü kullanmadığı için http proxy kullanmayı tercih etmeniz gerekir. Ücretsiz proxy'lerin çoğu çalışmadığı için try-except bloğunu kullandık.

def sending_request(session, proxy):
    try:
        response = session.get('http://httpbin.org/ip', proxies={'http': f"http://{proxy}"})
        print(response.json())
    except:
        pass

Read proxies_txt

Ücretsiz proxy listesini içeren list_proxies.txt dosyasını okumalı ve proxies adlı değişkene kaydetmelisiniz.

if __name__ == "__main__":
   ile open('list_proxies.txt', 'r') as file:
        proxies = file.readlines()

Oturum Oluştur

Talepler modülünden bir oturum oluşturmanız ve aşağıdaki adımları izlemeniz gerekir.

  • Proxy üzerinden döngü
  • Proxy'yi ve oturumu sending_request fonksiyonuna aktarın
with requests.Session() as session:
   for proxy in proxies:
        sending_request(session, proxy)

Aşağıda gösterildiği gibi proxy'lerin listesini alacaksınız.

Bunlar bazı proxy'ler ve liste daha fazla proxy ile devam ediyor, ancak hepsi çalışmıyor.

Vekil İhtiyacı

Her işletmenin aşağıda belirtilen proxy kullanımına ilişkin beş hayati kurumsal nedeni bilmesi gerekir.

Hassas Görevlerin Anonim Olarak Yürütülmesi

Proxy'ler web trafiğini anonimleştirme yetenekleriyle tanınırlar. Ancak çoğu insan bunların iş sektöründeki önemini anlayamaz. Proxy sunucuları güvenlik görevlilerinin ve muhabirlerin kendilerini, şirketlerini, kaynaklarını, müşterilerini ve ortaklarını korumalarını sağlar.

Proxy'leri ayrıca geliştirme ve mevcut araştırma ve diğer şirket faaliyetlerini korumak için de kullanabilirsiniz. Şirketinizin, işinizin ne geliştirdiğini belirlemek için web trafiğini izlemek için bir proxy ve potansiyel bir casus kullandığını varsayalım. Bu durumda, çalışanlarınızı kolayca takip edemeyecektir.

Kurumsal ve Kurumsal Güvenliğin Geliştirilmesi

Veri ihlallerinin hem kamu imajı hem de parasal kayıp açısından maliyetli olduğunu biliyorsunuz. Bu yüzden şirketler bilgisayar korsanları konusunda endişeli. Ancak proxy'ler veri ihlali olasılığını azalttıkları için size yardımcı olabilirler. Sunucularınız ile dış trafik arasına ek bir güvenlik katmanı eklerler. Proxy sunucuları ayrıca internetle yüzleştikleri ve ağ dışındaki bilgisayarlardan gelen istekleri aktardıkları için bir tampon görevi görürler.

Bilgisayar korsanlarının proxy sunucularınıza erişimi varsa, verilerin depolandığı web yazılımını çalıştıran sunucuya ulaşmakta yine de sorun yaşayacaklardır.

Çalışanların İnternet Kullanımını Kontrol Etme

Veri ihlallerinin hem kamu imajı hem de parasal kayıp açısından maliyetli olduğunu biliyorsunuz. Bu yüzden şirketler bilgisayar korsanları konusunda endişeli. Ancak proxy'ler veri ihlali olasılığını azalttıkları için size yardımcı olabilirler. Sunucularınız ile dış trafik arasına ek bir güvenlik katmanı eklerler. Proxy sunucuları ayrıca internetle yüzleştikleri ve ağ dışındaki bilgisayarlardan gelen istekleri aktardıkları için bir tampon görevi görürler.

Bilgisayar korsanlarının proxy sunucularınıza erişimi varsa, verilerin depolandığı web yazılımını çalıştıran sunucuya ulaşmakta yine de sorun yaşayacaklardır.

Bant Genişliğinden Tasarruf ve Daha Yüksek Hızlara Ulaşma

Bazı insanlar proxy sunucularının arka planda yaptıkları büyük miktarda iş nedeniyle internet hızlarını yavaşlattığını varsayar. Ancak bu her zaman doğru değildir. Proxy sunucuları bant genişliğinden tasarruf etmek ve hızları artırmak için kullanılabilir:

  • Birden fazla kullanıcı tarafından erişilen web sayfalarını ve dosyaları önbelleğe alma
  • Trafiği sıkıştırma
  • Web sitelerinden reklamları kaldırma

Hangi Proxy'ler Kullanılmalı?

İşletmelere tüm faydaları sağlayan tek bir vekalet türü olduğunu düşünebilirsiniz, örneğin

  • Veri ihlallerinin önlenmesi
  • Rekabetçi fiyatlar belirlemek
  • Sosyal medyada değerli veriler toplamak
  • Etkili bir SEO stratejisi oluşturma

Gerçekte, birçok proxy türü mevcuttur ve hangisini kullanacağınız gereksinimlerinize veya kullanım durumunuza bağlıdır.

Aşağıda en yaygın proxy türleri verilmiştir.

Veri Merkezi Proxyleri

Veri merkezi proxy'leri dünya çapında işletmeler tarafından kullanılan en yaygın proxy'lerdir. Veri merkezleri bu proxyleri üretir ve yönetir. Ucuz ve edinmesi kolay oldukları için sisteminizin güvenliğini artırmanız gerekiyorsa bu proxy'leri kullanabilirsiniz. Ancak bazı web siteleri bot benzeri faaliyetlerle ilişkilendirdikleri için kullanımlarını yasaklar.

Konut Vekaletnameleri

Konut proxy'leri fiziksel konutlarla ilişkilidir ve İnternet Servis Sağlayıcıları (İSS'ler) tarafından sağlanan gerçek kişilerin IP adreslerini kullanır. Bir web sitesine bağlanmak için bunları kullandığınızda, sıradan bir kullanıcı gibi görünürsünüz. Böylece tespit edilme ve yasaklanma olasılığınız azalır. Yerleşim yeri proxy'lerini kullanarak büyük miktarda web verisini kazıyabilir ve gelişmiş anonimlik ve güvenlik elde edebilirsiniz.

Sonuç

Şimdiye kadar, bir proxy 'nin istemci ve sunucu makine arasında bir röle görevi gördüğünü tartıştık. Ne zaman bir bilgi isteseniz, bilgisayarınız bu isteği proxy'ye gönderir, o da bilgiyi farklı bir IP adresi kullanarak hedef bilgisayara gönderir. Böylece IP adresiniz gizli kalır. Ayrıca, Python'daki requests modülü ile proxy'leri kullanabilir ve ihtiyacınıza bağlı olarak çeşitli eylemler gerçekleştirebilirsiniz. Veri merkezi proxy'lerinin hızına ve konut proxy'lerinin yüksek anonimliğine sahip statik bir IP'ye ihtiyacınız varsa, IP adresi her yeni istekte değişmeden kaldığı için statik proxy'ler gitmenin yoludur. Aksine, dönen proxy'ler test ve kazıma işlemlerinde avantaj sağlar.