Hanya kunci http yang diatur
Kunci menyebut skema target, bukan skema proxy. Kamus yang hanya berisi http merutekan HTTP biasa dan membiarkan setiap panggilan HTTPS keluar langsung, tanpa error yang memberi tahu Anda.
Arahkan requests ke satu alamat ISP statis: satu IP di jaringan penyedia internet yang disebutkan namanya, tetap milik Anda selama periode yang Anda bayar. Kode di bawah dijalankan terhadap proxy yang memerlukan autentikasi sebelum diterbitkan.
Singkatnya: Berikan kamus proxies dengan kunci http dan https, masing-masing berisi http://USERNAME:PASSWORD@HOST:PORT, dan requests mengirim panggilan melalui proxy; target HTTPS melewatinya sebagai tunnel. Untuk SOCKS5, instal requests[socks], alihkan proxy ke SOCKS5 pada pesanan Anda, dan pakai skema socks5h, sehingga hostname diresolusi oleh proxy, bukan oleh mesin Anda.
Python requests mengambil proxy-nya dari kamus yang memetakan skema URL target ke URL proxy. Panduan ini mengatur kamus tersebut untuk satu alamat ISP statis dan menunjukkan tiga tempat kamus itu bisa berada: pada panggilan, pada session, atau di environment.
Sebagian besar proxy, termasuk milik kami, meminta nama pengguna dan kata sandi. requests membacanya dari URL proxy dan mengirimnya ke proxy pada setiap koneksi. Untuk target HTTPS, proxy membuka tunnel dan tidak pernah melihat isi request. Tab kode menunjukkan bentuk per request dan bentuk session.
Host, port, nama pengguna, dan kata sandi, dari Proxy Saya di dasbor atau dari pesanan di API. Setiap alamat punya empat nilainya sendiri; tidak ada gateway bersama.
http://USERNAME:PASSWORD@HOST:PORT. Jika kata sandi berisi /, ?, #, atau %, lakukan URL-encode terlebih dahulu dengan urllib.parse.quote(password, safe="").
Berikan URL yang sama ke kunci http dan https. Jika hanya http yang diatur, setiap request HTTPS tidak melalui proxy dan keluar dari alamat Anda sendiri.
Minta halaman yang menampilkan IP pemanggil, atau buka Berapa IP Saya melalui proxy yang sama, lalu pastikan itu alamat yang Anda beli.
Selalu berikan timeout=: secara default requests menunggu tanpa batas, dan koneksi yang macet lalu terlihat seperti skrip yang hang.
import requests
# The four values come with your order (dashboard or API)
proxy = "http://USERNAME:PASSWORD@HOST:PORT"
response = requests.get(
"https://example.com/",
proxies={"http": proxy, "https": proxy},
timeout=30,
)
response.raise_for_status()
print(response.status_code)
import requests
proxy = "http://USERNAME:PASSWORD@HOST:PORT"
with requests.Session() as session:
# HTTP_PROXY / HTTPS_PROXY in the environment would override
# session.proxies; this makes the session use only its own setting.
session.trust_env = False
session.proxies.update({"http": proxy, "https": proxy})
response = session.get("https://example.com/", timeout=30)
response.raise_for_status()
print(response.status_code)
# pip install "requests[socks]"
import requests
# Switch the proxy to SOCKS5 first; use the values the order then shows.
# socks5h: the proxy resolves the hostname, not your machine.
proxy = "socks5h://USERNAME:PASSWORD@HOST:PORT"
response = requests.get(
"https://example.com/",
proxies={"http": proxy, "https": proxy},
timeout=30,
)
response.raise_for_status()
print(response.status_code)
Setiap contoh terhubung melalui proxy HTTP dengan nama pengguna dan kata sandi, kecuali contoh SOCKS5, yang mengharuskan proxy dialihkan ke SOCKS5 terlebih dahulu; setelah itu pesanan menampilkan port baru dan kredensial baru yang harus dipakai. Ganti keempat nilai berhuruf kapital dengan nilai dari pesanan Anda.
| Cakupan | Kredensial | Kapan dipakai | |
|---|---|---|---|
| proxies= pada panggilan | Hanya request itu | Di dalam URL | Skrip dengan beberapa panggilan saja |
| Session.proxies | Setiap request dalam session | Di dalam URL | Apa pun yang lebih panjang, dengan trust_env diatur ke False |
| HTTP_PROXY dan HTTPS_PROXY | Setiap panggilan requests dalam proses | Di dalam URL | Kode yang tidak bisa Anda ubah; NO_PROXY berisi host yang tidak melalui proxy |
| URL socks5h:// | Cakupan apa pun tempat ia diatur | Di dalam URL | Saat hostname harus diresolusi di proxy |
Kunci menyebut skema target, bukan skema proxy. Kamus yang hanya berisi http merutekan HTTP biasa dan membiarkan setiap panggilan HTTPS keluar langsung, tanpa error yang memberi tahu Anda.
Dengan socks5, mesin Anda meresolusi hostname dan memberikan IP ke proxy. Dengan socks5h, proxy yang meresolusinya, sehingga pencarian DNS dan jawabannya berasal dari jaringan proxy, dan ini penting untuk situs yang menjawab berdasarkan lokasi.
Garis miring, tanda tanya, atau tanda pagar di kata sandi memotong URL, dan requests gagal sebelum mencapai proxy; tanda persen didekode sebagai escape. Lakukan URL-encode pada kata sandi, atau pakai autentikasi whitelist IP dan jangan sertakan kredensial.
requests membaca HTTP_PROXY, HTTPS_PROXY, dan NO_PROXY kecuali Anda mengatur trust_env ke False pada session, dan variabel tersebut mengalahkan Session.proxies. Variabel lama di server bisa mengirim trafik session ke tempat yang tidak Anda maksud, atau memintas proxy sama sekali.
Taruh nama pengguna dan kata sandi di URL proxy, http://USERNAME:PASSWORD@HOST:PORT, lalu berikan untuk kunci http dan https. requests mengirim kredensial ke proxy, yang menjawab 407 jika kredensialnya salah. Encode kata sandi yang berisi karakter khusus, atau pakai whitelist IP sebagai gantinya.
Instal ekstranya dengan pip install requests[socks], alihkan proxy itu sendiri ke SOCKS5 pada pesanan Anda, dan pakai port serta kredensial yang kemudian ditampilkan pesanan dalam URL socks5h://. Mengganti skema saja tidak cukup: alamat yang diatur ke HTTP tidak menjawab SOCKS5 sampai dialihkan. SOCKS5
Bisa. Tambahkan alamat IPv4 publik tempat skrip Anda berjalan ke whitelist proxy dengan satu panggilan API, PUT /orders/ORDER_ID/whitelist, atau melalui server MCP; dasbor belum punya kontrol untuk ini. Setelah itu proxy menerima koneksi dari alamat tersebut tanpa kredensial, lewat HTTP maupun SOCKS5, dan URL-nya menjadi http://HOST:PORT. Selama whitelist diatur, proxy hanya menerima alamat yang terdaftar dan nama pengguna serta kata sandi berhenti berfungsi untuk pesanan itu; mengirim daftar kosong mematikan whitelist dan login dengan kata sandi berfungsi lagi.
Tidak. Proxy ISP statis adalah satu alamat selama periode yang Anda bayar, dan setiap request yang Anda kirim melaluinya keluar dari alamat itu. Jika sebuah pekerjaan memerlukan alamat berbeda per request, itu adalah pool rotasi, yang belum kami jual.
Minta halaman yang menampilkan kembali alamat pemanggil melalui proxy yang sama, atau buka Berapa IP Saya dari browser yang diatur ke proxy itu. Jika yang tampil alamat Anda sendiri, kemungkinan kunci https belum ada. Berapa IP Saya
Menguji situs Anda sendiri per wilayah, pemeriksaan kualitas, verifikasi iklan, riset harga dan pasar, serta perlindungan merek tidak memerlukan peninjauan menurut kebijakan penggunaan yang dapat diterima kami. Proxy ini tidak melewati CAPTCHA, deteksi bot, batas laju, atau pemblokiran akun, dan kebijakan tersebut melarang memakainya untuk mencoba hal itu. Kebijakan Penggunaan yang Dapat Diterima