Python
requests, httpx, aiohttp, concurrency async
Dokumentasi · gateway, format username, sesi, kesalahan, batasan
Semua yang Anda butuhkan untuk mengirim permintaan pertama, lalu referensi yang akan Anda kunjungi kembali: parameter penargetan, aturan sesi, kode kesalahan dan batasan.
Jawaban cepat
Bagaimana cara terhubung ke proxy CrawlRelay?
Arahkan klien HTTP apa pun ke http://USERNAME:[email protected]:7777, atau SOCKS5 ke port 7778. CrawlRelay, layanan proxy residensial developer-first, membaca penargetan dan sesi dari username: USERNAME-country-us-city-new_york-session-job1-ttl-30. Lalu lintas residensial dikenai biaya US$1,50 per 1 GB dan US$0,50/GB mulai 50 GB. Dibayar dengan crypto, tanpa KYC.
| Host gateway | gw.crawlrelay.com |
|---|---|
| Port HTTP / HTTPS | 7777 (situs HTTPS melalui CONNECT) |
| Port SOCKS5 | 7778 (gunakan socks5h:// agar DNS diselesaikan pada exit) |
| Autentikasi | Username dan password dari paket Anda atau sub-user, atau daftar IP yang diizinkan (hingga 10 IP) |
| Format username | USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes} |
| Panjang sesi | hingga 30 menit; IP dapat berubah lebih awal |
| URL uji | https://api.ipify.org mengembalikan IP exit sebagai teks biasa |
| Management API | https://crawlrelay.com/api/v1, Kunci API yang dapat dicabut kapan saja (dokumentasi API) |
Salin username dan password dari dashboard Anda, lalu jalankan salah satu ini. Masing-masing mencetak alamat IP yang dilihat situs web, yang biasanya berubah di setiap kali dijalankan.
curl -x http://USERNAME-country-us:[email protected]:7777 https://api.ipify.orgimport requests
proxy = "http://USERNAME-country-us:[email protected]:7777"
r = requests.get("https://api.ipify.org", proxies={"http": proxy, "https": proxy}, timeout=(10, 30))
print(r.text)import { ProxyAgent, fetch } from "undici";
const dispatcher = new ProxyAgent("http://USERNAME-country-us:[email protected]:7777");
const res = await fetch("https://api.ipify.org", { dispatcher });
console.log(await res.text());Mulai dari username di dashboard Anda dan tambahkan parameter dengan tanda hubung, sesuai urutan format di atas. Setiap parameter bersifat opsional. Nilai huruf kecil, dan nama kota menggunakan underscore (new_york, sao_paulo). Ketersediaan kota bervariasi.
| Tujuan | Username |
|---|---|
| Negara apa saja, berputar per koneksi | USERNAME |
| Jerman | USERNAME-country-de |
| Paris | USERNAME-country-fr-city-paris |
| Texas | USERNAME-country-us-state-tx |
| Satu kode pos | USERNAME-country-us-zip-10001 |
| Satu penyedia internet | USERNAME-country-us-asn-7922 |
| IP sama hingga 30 menit | USERNAME-country-gb-session-abc123-ttl-30 |
Jika password Anda mengandung @, : atau /, kodekan URL terlebih dahulu sebelum dimasukkan dalam URL proxy. Halaman error 407 menunjukkan caranya.
Username tanpa session- mendapatkan IP dari pool pada setiap koneksi TCP baru, biasanya berbeda. Username dengan session-<id>-ttl-<minutes> mempertahankan IP exit yang sama untuk ID tersebut sampai TTL habis atau perangkat proxy residensial offline.
Panduan sesi membahas penggunaan kembali koneksi di tiap library.
Pertama, cari tahu siapa yang merespons: gateway, atau situs web di belakangnya.
| Anda melihat | Dikirim oleh | Penyebab umum | Apa yang harus dilakukan |
|---|---|---|---|
| 407 | Gateway | Kredensial salah atau tidak terenkode | Perbaiki nama pengguna atau kata sandi; jangan coba lagi tanpa pertimbangan |
| ERR_TUNNEL_CONNECTION_FAILED | Browser | CONNECT ditolak (sering kali adalah 407 tersembunyi) | Kirimi kredensial sebagai field, bukan di URL server |
| 502 / 504 | Gateway atau CDN | Exit terputus, target lambat atau mati | Coba ulang dengan koneksi baru, dengan batasan |
| 403 | Situs web | Negara, header, rate, atau penolakan salah | Periksa di browser; kurangi kecepatan atau hormati penolakan |
| 429 | Situs web | Batasan rate | Hormati Retry-After; turunkan concurrency per host |
| SSL: WRONG_VERSION_NUMBER | Klien Anda | https:// di depan URL proxy | Gunakan http:// untuk URL proxy |
Semua entri 15 ada di referensi error.
Di dashboard, atau melalui REST API di https://crawlrelay.com/api/v1 dengan API key. Kunci API yang dapat dicabut kapan saja. Tugas utama:
requests, httpx, aiohttp, concurrency async
Middleware, sesi per permintaan, AutoThrottle
Python dan Node.js, proxy per konteks
Flag plus page.authenticate()
Proxy dengan autentikasi melalui local forwarder
undici, axios, got, SOCKS5
HTTP, SOCKS5, debug dengan -v
Penggunaan ulang koneksi, TTL, satu IP per flow
Batas per-host, throughput dan penundaan
CrawlRelay menerbitkan panduan copy-paste untuk Python (requests, httpx, aiohttp), Scrapy, Playwright, Puppeteer, Selenium, Node.js dan curl, referensi 15 error proxy dan referensi REST API dengan contoh curl, Python dan Node.js. Setiap contoh memakai host gateway nyata dan port, serta cuplikan diperiksa sintaksnya sebelum dipublikasikan.
Tidak. Autentikasi username dan password bisa dari mesin mana saja, jadi Anda bisa menjalankan scraper pada laptop, server, atau runner CI. Jika mau, tambah sampai 10 IP ke daftar whitelist. Simpan kredensial di variabel lingkungan atau manajer rahasia, jangan simpan di repository Anda.
Entah nama pengguna Anda berisi ID sesi, yang sengaja mempertahankan satu IP, atau klien Anda menggunakan kembali satu koneksi kept-alive. Rotasi terjadi pada setiap koneksi baru. Hapus bagian sesi, atau buka koneksi baru untuk setiap permintaan, seperti yang dijelaskan di panduan sesi.
Gunakan port HTTP (7777) untuk web scraping: setiap perpustakaan dan browser mendukungnya dengan autentikasi, dan situs HTTPS berfungsi melalui tunnel CONNECT. Gunakan SOCKS5 (7778) untuk alat yang hanya berbicara SOCKS, dengan socks5h:// supaya DNS dapat diselesaikan di exit.
Minta https://api.ipify.org melalui proxy untuk mendapatkan IP, lalu cari di database geolokasi yang Anda percayai. Database sering berbeda pada beberapa IP, khususnya yang seluler, jadi periksa juga konten yang disajikan target: mata uang, bahasa, dan hasil lokal adalah yang penting untuk data Anda.
Paket dikenakan biaya per GB, bukan per permintaan, dan batasan yang akan Anda temui pertama kali adalah batas dari target itu sendiri. Kelola laju tiap target secara terpisah dan kurangi saat menerima respons 429 dan 503. Jika Anda merencanakan crawl sangat besar, beritahu dukungan di [email protected] terlebih dahulu.
Dari US$0,50/GB · tanpa KYC
Mulai sekarang