Hızlı cevap
curl ile proxy nasıl kullanılır?
HTTP proxy için curl -x http://USERNAME:[email protected]:7777 https://api.ipify.org, SOCKS5 için --socks5-hostname gw.crawlrelay.com:7778 ve -U USERNAME:PASSWORD kullanın. CrawlRelay konut proxy kullanıcı adında ülkeyi ve yapışkan oturumu içerir, örneğin USERNAME-country-de-session-t1-ttl-10. $0,50/GB’ten itibaren kripto ile ödenir, KYC olmadan.
curl için gereken bayraklar
-x / --proxy | Proxy URL'si: http://host:port, içinde kimlik bilgileri isteğe bağlı |
|---|---|
-U / --proxy-user | URL dışında tutulan proxy kimlik bilgileri olarak USERNAME:PASSWORD |
--socks5-hostname | DNS çıkışta çözümlenen SOCKS5 konut proxy |
-v | CONNECT değişimini ve konut proxy'nin durum satırını gösterir |
-w | Zamanlama, boyut ve %{http_connect}, konut proxy'nin CONNECT durumu yazdırılır |
--max-time, --connect-timeout | Toplam ve bağlantı zaman sınırları, saniye cinsinden |
Temel konut proxy komutları nelerdir?
Bunların her biri, web sitesinin gördüğü çıkış IP'sini yazdırır.
# Rotating exit, any country
curl -x http://gw.crawlrelay.com:7777 -U USERNAME:PASSWORD https://api.ipify.org
# Country and city (city availability varies)
curl -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us-city-chicago:PASSWORD https://api.ipify.org
# Sticky: run it twice, the IP stays the same for up to 10 minutes (it can change earlier)
curl -x http://gw.crawlrelay.com:7777 -U USERNAME-country-de-session-t1-ttl-10:PASSWORD https://api.ipify.org
# SOCKS5, DNS resolved at the exit
curl --socks5-hostname gw.crawlrelay.com:7778 -U USERNAME-country-gb:PASSWORD https://api.ipify.orgcurl ile konut proxy bağlantısı nasıl hata ayıklanır?
-v ile çalıştırın ve CONNECT civarındaki satırları okuyun. Çalışan tünel HTTP/1.1 200 Connection established gösterir, ardından site ile TLS el sıkışması gelir. O satırdaki diğer durum konut proxy kaynaklıdır: 407 kimlik bilgileri ister, 502 veya 504 çıkış veya hedef anlamına gelir. Aşağıdaki -w formatı aynı bilgiyi tek satırda yazdırır; döngüler ve sürekli entegrasyon kontrolleri için kullanışlıdır.
# Full exchange, including the proxy's answer to CONNECT
curl -v -x http://gw.crawlrelay.com:7777 -U USERNAME:PASSWORD https://example.com/ -o /dev/null
# One line: proxy CONNECT status, HTTP status, compressed bytes and timings
curl -s --compressed -o /dev/null -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us:PASSWORD \
-w 'connect=%{http_connect} http=%{http_code} bytes=%{size_download} tcp=%{time_connect}s tls=%{time_appconnect}s ttfb=%{time_starttransfer}s total=%{time_total}s\n' \
https://example.com/Dönüşüm ve oturumların çalışıp çalışmadığını nasıl kontrol ederim?
IP'yi birkaç kez isteyin. Oturum kimliği olmadan her çalıştırma yeni bağlantı ve genellikle farklı IP gösterir. Oturum kimliğiyle IP, TTL bitene kadar aynı kalır; ancak daha erken değişebilir.
echo "rotating:"
for i in 1 2 3 4 5; do
curl -s -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us:PASSWORD https://api.ipify.org; echo
done
echo "sticky:"
for i in 1 2 3 4 5; do
curl -s -x http://gw.crawlrelay.com:7777 -U USERNAME-country-us-session-loop1-ttl-5:PASSWORD https://api.ipify.org; echo
doneWindows'ta konut proxy ile curl nasıl kullanılır?
curl.exe çağırın, curl değil. Windows PowerShell 5.1'de curl, Invoke-WebRequest için takma addır ve -x veya -U anlamaz. Windows 10 ve 11'de gerçek curl curl.exe olarak gelir. PowerShell'de özel karakter içeren argümanları tırnak içinde yazın; şifrede tek tırnak içinde $ karakterini literal yazın.
curl.exe -x http://gw.crawlrelay.com:7777 -U 'USERNAME-country-fr:PASSWORD' https://api.ipify.orgBelli bir komut için konut proxy bir defa nasıl ayarlanır?
curl, https_proxy ve http_proxy ortam değişkenlerini okur, birçok araç da okur. Bunları bir shell oturumu için ayarlayın; kendi API'niz gibi proxy'den geçmemesi gereken hostlar için NO_PROXY kullanın. Şifreyi paylaşılan bir makinada her alt sürece aktarılacak değişkene koymaktan kaçının.
export https_proxy="http://USERNAME-country-us:[email protected]:7777"
export http_proxy="$https_proxy"
export NO_PROXY="localhost,127.0.0.1,.internal.example"
curl https://api.ipify.org # now uses the proxy
unset https_proxy http_proxy # back to directcurl ve konut proxy: sorular
--socks5 ile --socks5-hostname arasındaki fark nedir?
--socks5 ile curl, ana bilgisayar adını yerel makinenizde çözer ve IP'yi konut proxy'ye gönderir. --socks5-hostname ile ana bilgisayar adını gönderir, konut proxy tarafı çözer. --socks5-hostname kullanın ki DNS cevapları çıkış ülkesine uysun ve yerel çözücünüz çektiğiniz alanları görmesin.
curl neden 'CONNECT tüneli başarısız, yanıt 407' diyor?
Konut proxy kimlik bilgilerini reddetti veya hiç almadı. Kullanıcı adı ve şifreyi kontrol edin, özel karakterler varsa -x URL içinde URL kodlaması yapın ya da bunları -U ile gönderin. 407 sayfası diğer nedenleri listeler.
Konut proxy üzerinden bir sayfanın kaç byte olduğunu nasıl görürüm?
--compressed -o /dev/null -w '%{size_download}\n' ekleyin. --compressed, curl'un scraper gibi gzip veya brotli istemesini sağlar, %{size_download} ardından iletilen sıkıştırılmış baytları sayar. Bunu yapmazsa, sunucu sayfayı sıkıştırmadan gönderir ve bu rakam birkaç kat fazla olabilir. Trafiğinizi 1,000 sayfa başına tahmin etmek için birkaç gerçek sayfada çalıştırın.
curl konut proxy üzerinden HTTP/2 veya HTTP/3 kullanabilir mi?
HTTP/2, web sitesi destekliyorsa CONNECT tüneli içinde çalışır çünkü tünel TLS'yi uçtan uca taşır. HTTP/3 UDP üzerinden çalışır; HTTP proxy CONNECT tüneli UDP taşımaz; bu yüzden kapıdan HTTP/2 veya HTTP/1.1 kullanın.
Komut satırından hedeflerinizi test edin
$1,50 ile 1 GB, binlerce curl testi için yeterli.