Menggunakan Proksi dengan Python Requests

Komentar: 0

Title Menggunakan Proksi dengan Python Requests | Proxy Seller Description Pelajari cara menggunakan proxy secara efektif dengan paket Requests dalam tutorial ini, dan dapatkan wawasan tentang cara memilih penyedia proxy yang paling sesuai. Menggunakan Proksi dengan Python Requests

Singkatnya, proxy adalah server yang berfungsi sebagai lapisan luar yang menghubungkan ke layanan jaringan. Mereka berfungsi sebagai perantara untuk komputer dan situs tempat pengguna ingin mengekstrak informasi. Permintaan pengguna, alih-alih langsung dikirim ke situs yang relevan, pertama-tama diarahkan ke proxy yang kemudian mengirimkannya ke server akhir. Oleh karena itu, alamat IP server proxy adalah alamat IP yang disimpan oleh situs, bukan alamat IP pengguna.

Jadi, mengapa menggunakan proxy?

  • Anonimitas:

Misalnya, jika ada kebutuhan untuk mengumpulkan informasi dari sebuah situs tanpa takut akan pembatasan atau pemblokiran. Proksi membantu menyamarkan alamat IP pengguna yang sebenarnya dan mengubah identitas digital mereka yang sebenarnya.

  • Melewati pembatasan:

Sebuah proksi dari negara tertentu yang tidak memiliki pembatasan dapat digunakan. Hal ini karena, di negara tertentu, akses ke beberapa program dan situs web dibatasi atau diblokir.

  • Penyeimbangan beban:

Jika sejumlah besar permintaan dikirim ke situs tertentu, kemungkinan besar sistem akan dimuat. Akibatnya, ada risiko besar untuk diblokir. Menggunakan beberapa proksi pada saat yang sama memungkinkan pengguna untuk mendistribusikan permintaan secara merata ke situs tertentu, sehingga menghindari pemblokiran.

Mengatur dan Menginstalasi Python Requests

Requests adalah pustaka untuk mengirim permintaan HTTP menggunakan Python. Ini memudahkan untuk melakukan permintaan GET dan POST. Menggunakan Python Requests tanpa proxy dapat mengirim permintaan HTTP, tetapi tidak memberikan anonimitas atau melewati batasan.

1. Menginstalasi Perpustakaan Permintaan

Untuk menginstal request, cukup masukkan perintah di bawah ini di terminal:


pip install requests

2. Memverifikasi Instalasi

Untuk memverifikasi bahwa pustaka yang diperlukan telah diatur dengan benar, Anda perlu membuka lingkungan pengembangan Python dan menjalankan perintah:


import requests 

print(requests.__version__)

Jika semuanya dilakukan dengan benar, skrip akan mengembalikan nomor versi.

Cara Menggunakan Proxy Dengan Requests Python

Setelah kita menginstal library requests, kita dapat mulai mengeksekusi permintaan HTTP. Namun, untuk memasukkan proxy, konfigurasi tertentu dalam Python harus dilakukan.

Mari kita lihat langkah-langkah yang harus diikuti untuk mengonfigurasi proxy dengan benar untuk permintaan di Python. Kita akan membahas Python Requests dengan konfigurasi proxy SOCKS secara terpisah.

1. Mengkonfigurasi Server Proxy

Menggunakan Python untuk menyiapkan proxy sangat mudah bagi pengguna yang menggunakan pustaka permintaan. Ini mengharuskan alamat server proxy dilewatkan dalam kamus dan kemudian digunakan saat membuat permintaan HTTP.


proxies = {
    "http": "http://your-proxy-ip:port",
    "https": "http://your-proxy-ip:port",
}

response = requests.get("http://example.com", proxies=proxies)

2. Otentikasi Proksi

Ketika menggunakan Python Requests, autentikasi proksi mudah diatur. Mari kita lihat lebih dekat detailnya.


proxies = { 
    "http": "http://username:password@your-proxy-ip:port", 
    "https": "http://username:password@your-proxy-ip:port", 
} 

response = requests.get("http://example.com", proxies=proxies)

Dua bidang baru yang perlu diisi adalah:

  • username – nama pengguna proxy;
  • password – kata sandi proxy.

3. Menggunakan Proksi SOCKS

Untuk pengguna yang membutuhkan tingkat anonimitas yang lebih tinggi, atau jika Anda bekerja dengan situs yang sangat dibatasi, proksi HTTP standar mungkin tidak berfungsi. Dalam hal ini, proksi SOCKS mungkin lebih baik.

Untuk mengaktifkan dukungan proxy SOCKS, perpustakaan tambahan perlu diinstal menggunakan perintah yang tercantum di bawah ini:


pip install requests[socks]

Setelah terinstal, Python Requests memungkinkan Anda untuk menyiapkan proksi SOCKS yang dapat digunakan seperti yang ditunjukkan pada contoh di bawah ini.


import requests

proxies = {
    "http": "socks5h://your-proxy-ip:port",
    "https": "socks5h://your-proxy-ip:port",
}

response = requests.get("http://example.com", proxies=proxies)

Jika server proxy memerlukan autentikasi, sertakan seperti yang ditunjukkan di bawah ini.


proxies = {
    "http": "socks5h://username:password@your-proxy-ip:port",
    "https": "socks5h://username:password@your-proxy-ip:port",
}

Mengelola Sesi dengan Proksi dalam Python Requests

Ketika membuat banyak permintaan melalui satu proxy, alih-alih menambahkannya ke setiap permintaan, akan jauh lebih efisien untuk menggunakan sesi Python Requests dengan proxy.

Metode penggunaan proxy ini membantu dalam mempertahankan pengaturan di semua sesi. Metode ini juga menyederhanakan kode, meningkatkan kinerja, dan yang paling penting, membuat implementasi menjadi lebih mudah.

1. Menggunakan Sesi Python Requests dengan Proksi

Sangat mudah untuk membuat sebuah sesi, cukup ketik requests.Session().

Perhatikan contoh berikut ini:


import requests

# Membuat sesi
session = requests.Session()

session.proxies = {
    "http": "http://username:password@your-proxy-ip:port",
    "https": "http://username:password@your-proxy-ip:port",
}

# Permintaan melalui sesi
response = session.get("http://example.com")

Semua Python Requests dalam sesi ini akan menggunakan proksi yang ditetapkan secara default tanpa konfigurasi tambahan.

2. Menangani Beberapa Proksi dalam Python Requests

Ketika Anda secara aktif terlibat dengan sebuah situs web baik untuk tujuan scraping atau untuk otomatisasi, menggunakan proxy yang sama berulang kali dapat membuat akun Anda diblokir. Hal ini dapat diatasi dengan merotasi proksi jika Anda memiliki beberapa server proksi yang berbeda.

Contoh berikut ini menunjukkan implementasi perulangan yang memutar proxy untuk setiap interaksi dengan halaman web:


import requests
import random

proxies_list = [
    "http://username:password@your-proxy-ip[1]:port",
    "http://username:password@your-proxy-ip[2]:port",
    "http://username:password@your-proxy-ip[3]:port",
]

session = requests.Session()

for _ in range(5):
    proxy = random.choice(proxies_list)  # Pilih proxy secara acak
    session.proxies = {"http": proxy, "https": proxy}

    response = session.get("http://example.com")
    print(f"Used proxy: {proxy}")
    print(response.status_code)

Kesimpulan

Sebagai kesimpulan, berikut ini beberapa saran yang mungkin dapat membantu Anda mengelola proksi dengan lebih baik:

  • Gunakan sesi sehingga Anda tidak perlu mengatur proxy untuk setiap permintaan.
  • Gunakan proksi anonim tanpa log untuk perlindungan yang lebih baik.
  • Untuk mencegah pemblokiran, gunakan beberapa proxy.

Pada artikel ini, kita telah membahas apa itu server proxy, bagaimana menggunakan proxy dalam Python Requests dengan benar, dan mengelola proxy melalui sesi untuk menyederhanakan kode. Contoh ini juga menunjukkan penggunaan proxy SOCKS dan proxy biasa, bagaimana autentikasi ditangani, dan manajemen proxy.

Komentar:

0 komentar