CodeGym /Kurslar /Python SELF AZ /Proxy-serverlərin sorğu tezliyinə məhdudiyyətləri keçmək ...

Proxy-serverlərin sorğu tezliyinə məhdudiyyətləri keçmək üçün istifadəsi

Python SELF AZ
Səviyyə , Dərs
Mövcuddur

1. Proxy-server nədir?

Şəbəkələr dünyasından bir az

Proxy-server əslində kiberməkanda sizin şəxsi gizli agentinizdir. Təsəvvür edin ki, şəbəkədə anonim qalmaq qərarına gəlmisiniz və sizə vasitəçi lazımdır. Bu vasitəçi sizin sorğularınızı serverə göndərəcək, sonra isə cavabları geri qaytararaq sizin əsl IP ünvanınızı gizlədəcək. Proxy-server tam olaraq bunu edir — sorğularınızı anonim şəkildə ötürür və cavabları sizə çatdırır.

Proxy-serverlərin növləri

Koda keçməzdən əvvəl, proxy-serverlərin tiplərini qısa nəzərdən keçirmək yaxşı olardı. Onlar müxtəlif növdə olur və hər biri özünəməxsus tətbiq və xüsusiyyətlərə malikdir:

  • HTTP-proxy: HTTP-sorğuların işlənməsi üçün istifadə olunur. Adi veb-sörfinq üçün əladır.
  • HTTPS-proxy: Şifrələnmiş HTTPS-sorğuları emal edir. Təhlükəsiz əlaqə üçün vacibdir.
  • SOCKS-proxy: Daha universal olub, istənilən trafik növü ilə işləyə bilər. Maksimum çeviklik lazım olduğunda mükəmməl seçimdir.

2. Python-da proxy-serverin qurulması

Python-da proxy-server qurmaq – bu pişikdən klaviaturada oturmamasını rica etməkdən daha asandır. Biz requests kitabxanasından istifadə edəcəyik, bu kitabxana HTTP və HTTPS bağlantıları üçün proxy parametrlərini asanlıqla təyin etməyə imkan verir.

requests kitabxanasının qurulması

Əgər hər hansı səbəbdən hələ də requests kitabxanasını quraşdırmamısınızsa, bu problemi həll etməyin vaxtıdır. Bu şəkildə edirik:

Python
import requests

# HTTP və HTTPS tələbləri üçün proxy-serverləri təyin edirik
proxies = {
'http': 'http://your.proxy.server:port',
'https': 'https://your.proxy.server:port'
}

# Tələbi proxy-dən keçirərək icra edirik
response = requests.get('http://example.com', proxies=proxies)

# Nəticəni çıxarırıq
print(response.text)
Bash

pip install requests

Proxy-serverin istifadəsi nümunəsi

İndi isə görək, tələbləri proxy-server vasitəsilə necə yönləndiririk. Bunun üçün requests kitabxanasının imkanlarından istifadə edəcəyik.

Python
import requests

# HTTP və HTTPS tələbləri üçün proxy-serverləri təyin edirik
proxies = {
'http': 'http://your.proxy.server:port',
'https': 'https://your.proxy.server:port'
}

# Tələbi proxy-dən keçirərək icra edirik
response = requests.get('http://example.com', proxies=proxies)

# Nəticəni çıxarırıq
print(response.text)

Proxy sətirinin formatına diqqət yetirin. Buradakı vəzifəniz – your.proxy.server:port hissəsini istifadə etdiyiniz proxy-serverin URL və portu ilə əvəz etməkdir. İnternetdə həm ödənişli, həm də pulsuz proxy-serverlər mövcuddur. Əgər pulsuz proxy-serverlər “Miss Universe” müsabiqəsində iştirak etsəydilər, böyük bir fərqlə birinci olardılar.

3. Proxy-serverlərdən istifadənin üstünlükləri

Məhdudiyyətlərin keçilməsi

Proxy-serverlər bizə bəzi saytların qoyduğu sorğu sürətinə məhdudiyyətləri keçməyə imkan verir. Proxy-serverlərin rotasiyası vasitəsilə IP ünvanlarını müxtəlifləşdirmək və bloklanmaqdan yayınmaq olar. Bu, sanki musiqi pleyerində diski dəyişdirmək kimidir — skriptiniz artıq cansıxıcı olmayacaq.

Anonimliyi qoruma

Proxy-dən istifadə edərək, hərəkətlərinizin anonimliyini qoruya bilərsiniz. Bu, xüsusən də IP-yə görə məhdudiyyətləri keçmək istədiyiniz zaman vacibdir. Əslində, bu sizə uzaq serverin gözündə “maskalanmağa” imkan verir.

4. Proxy-serverlərin rotasiyası

Gəlin indi proxy-serverlərin rotasiyasını təsəvvür edək. Bu, ruletka fırlatmaq kimidir — heç vaxt harada dayanacağını bilmirsən. Bizim halda rotasiya scraping zamanı müxtəlif IP-ünvanlardan istifadə etmək və serverlərin şübhəsindən qaçmaq üçün lazımdır.

Python
import random

# Mövcud proxy-serverlərin siyahısı
proxy_list = [
'http://proxy1:port',
'http://proxy2:port',
'http://proxy3:port'
]

def get_random_proxy():
return random.choice(proxy_list)

proxies = {
'http': get_random_proxy(),
'https': get_random_proxy()
}

# Sorğunu təsadüfi seçilmiş proxy vasitəsilə edirik
response = requests.get('http://example.com', proxies=proxies)
print(response.text)

Kompleks rotasiya

Skriptinizi yaxşılaşdırmaq üçün məntiq əlavə edə bilərsiniz ki, bu məntiq proxy-lərin aktiv olub-olmadığını yoxlayır və əlçatmaz olduqda onları dəyişir. Bu üsulla etibarlı proxy-ünvan dəsti istifadə edəcəksiniz.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION