KYC olmadan — kimlik, selfie veya belge istemez. Kripto ile ödeyin: BTC, USDT, USDC, ETH, SOL, LTC
Dil: Türkçe
Başlayın

Proxy hata referansı · Tarayıcı ve istemci hataları

ProxyError: Python'da 'Proxyye bağlanılamıyor' ve Node.js

İstemci kitaplığı hatası (Python, Node.js): her araçta tam hata mesajı, olası nedenler sırasıyla ve işe yarayan çözüm.

Son güncelleme: · 4 dk okuma

Hızlı cevap

Konut proxy ile Cannot connect to proxy (ProxyError) ne anlama gelir?

'Proxyye bağlanılamıyor' sarmalayıcı bir hatadır: Python'un requests ve urllib3 kütüphaneleri gerçek nedeni içinde taşır. En içteki nedeni okuyun. 'Bağlantı reddedildi' veya zaman aşımı, host, port veya ağ sorununu; 'Çözümlenemedi' DNS sorununu; 'Tünel bağlantısı başarısız: 407' ise kimlik bilgisi sorununu gösterir. CrawlRelay ile her biri için tek satırlık bir çözüm vardır.

Cannot connect to proxy (ProxyError) hızlı bakış

HataCannot connect to proxy (ProxyError)
Türİstemci kitaplığı hatası (Python, Node.js)
GönderenProxy ile bağlantı kurmadan önce veya kurarken HTTP istemciniz
Tanımlandığı yerLibrary error; read the nested cause for the real reason
Tekrar denemek ister misiniz?İçteki nedeni bağlı olarak değişir
İlk kontrolEn içteki istisnayı okuyun: reddedildi, zaman aşımı, isim çözümleme veya bir durum kodu

Cannot connect to proxy (ProxyError) ne anlama gelir?

urllib3, proxy ile ilgili her hata için bir ProxyError oluşturur ve requests bunu iletir. Faydalı bilgi, traceback'in uzun satır sonunda yazdırdığı iç içe geçmiş istisnede bulunur.

Node.js istemciler farklı davranır: genellikle doğrudan soket hatasını raporlarlar, mesela ECONNREFUSED veya ETIMEDOUT gibi, çoğunlukla adresin proksi olduğu belirtilmeden.

Python, curl, Node.js ve tarayıcılarda 'Cannot connect to proxy' nasıl görünür?

Aynı başarısızlık her araçta farklı şekilde görünür. Loglarınızda aramanız gereken mesajlar şunlardır:

  • Reddedildi: ProxyError('Unable to connect to proxy', NewConnectionError(... Connection refused))
  • DNS: NameResolutionError(... Failed to resolve ...) içinde ProxyError
  • Kimlik Bilgileri: OSError('Tunnel connection failed: 407 Proxy Authentication Required')
  • Geçit Hatası: OSError('Tunnel connection failed: 502 Bad Gateway')
  • Node.js: Error: connect ECONNREFUSED, ETIMEDOUT ya da ENOTFOUND, ardından proxy adresi

'Cannot connect to proxy' neden olur?

Öncelikle en olası sebep:

  • Proksi URL'sinde Yanlış host veya port.
  • Eksik protokol (scheme): host:port'nin http:// olmadan olması bazı kütüphaneler tarafından şaşırtıcı şekilde yorumlanır.
  • Ağınızda veya sunucunuzda Çıkış trafiğinin engellenmesi.
  • CONNECT aşamasında ortaya çıkan kimlik bilgileri veya geçit hataları, aynı istisna içinde sarmalanır.
  • Kodunuzu geçersiz kılan eski proxyyi işaret eden HTTPS_PROXY gibi çevre değişkenleri.

'Cannot connect to proxy' nasıl adım adım teşhis edilir?

  1. Tam istisnayı yazdırın ve en son içteki nedeni okuyun.
  2. Yapılandırılmış olan requests.utils.get_environ_proxies(url) veya HTTP_PROXY, HTTPS_PROXY ve NO_PROXY değişkenlerini yazdırın.
  3. Aşağıdaki curl testini aynı makinede çalıştırın.
  4. Nedeni aşağıdaki çözüm listesiyle eşleştirin.
Başarısız URL'yi curl ile test edin (HTTP portu, detaylı çıktı)
# Use the URL that fails; with https://api.ipify.org instead, you test the gateway alone.
# "HTTP/1.1 200 Connection established" first, then the site's own status: the site answered.
curl -v -x http://USERNAME:[email protected]:7777 https://TARGET_URL

# Same test through the SOCKS5 port, with DNS resolved at the exit
curl -v --socks5-hostname gw.crawlrelay.com:7778 --proxy-user USERNAME:PASSWORD https://TARGET_URL

'Cannot connect to proxy' nasıl düzeltilir?

  • Reddedildi veya zaman aşımı: host ve portu düzeltin ya da geçite giden çıkış trafiğini açın.
  • Çözümlenemedi: makinedeki DNS'i kontrol edin; nslookup ile hostu deneyin.
  • 407: kimlik bilgilerini düzeltin ve URL kodlayın. 407 Proxy Authentication Required sayfasına bakın.
  • 502 veya 504: yeni çıkışta tekrar deneyin. 502 ve 504 sayfalarına göz atın.
  • İstenmeyen çevre proxy'si: requests'de session.trust_env = False ayarlayın veya değişkenleri temizleyin.
Python: kodlanmış kimlik bilgileriyle proxy URL'si oluşturma
from urllib.parse import quote

import requests

user = "USERNAME-country-us"
password = "p@ss:word/1"  # example containing special characters

# safe="" also encodes "/", "@" and ":" inside the credentials
proxy = "http://{}:{}@gw.crawlrelay.com:7777".format(
    quote(user, safe=""), quote(password, safe="")
)
proxies = {"http": proxy, "https": proxy}  # http:// for both keys

r = requests.get("https://api.ipify.org", proxies=proxies, timeout=(10, 30))
print(r.status_code, r.text)

'Cannot connect to proxy' sonrası tekrar denenmeli mi?

Sadece değişebilen ağ düzeyi nedenleri tekrar deneyin: zaman aşımı ve 502 ya da 504 gibi geçit hataları. Reddedilen bağlantı, DNS hatası veya 407 yapılandırmayı değiştirene kadar tekrar eder, bu yüzden bunları hata yönetiminde kritik yapın.

Cannot connect to proxy (ProxyError) CrawlRelay için nasıl geçerli?

CrawlRelay için proxy URL'si, HTTP ve HTTPS hedefler için aşağıda listelenen geçit hostu ve HTTP portundan sonra gelen http://USERNAME:PASSWORD@'dir. requests'de http ve https anahtarlarında aynı http:// URL'sini kullanın: scheme, proxy ile konuşulan protokolü belirtir, web sitesine değil.

Gateway: gw.crawlrelay.com, port 7777 (HTTP, HTTPS CONNECT üzerinden) ve port 7778 (SOCKS5). Kullanıcı adı formatı: USERNAME-country-{cc}-state-{state}-city-{city}-zip-{zip}-asn-{asn}-session-{id}-ttl-{minutes}. İlgili: SSL: WRONG_VERSION_NUMBER · 407 · Python rehberi.

Cannot connect to proxy (ProxyError): geliştiricilerin sorduğu sorular

Proxy ile 'Max retries exceeded with url' ne anlama gelir?

Bu, urllib3'ün tekrar deneme bütçesini aştığını ve gerçek nedenin mesajın 'Caused by' kısmında yer aldığını gösterir. Proxy kullanılırken, bu kısım genellikle ProxyError'dür ve içteki neden bağlantı reddi, zaman aşımı, isim çözümleme hatası veya 407 gibi tünel durumu olur.

requests neden benim yapılandırmadığım bir proxy kullanıyor?

requests varsayılan olarak HTTP_PROXY, HTTPS_PROXY ve NO_PROXY çevre değişkenlerini okur, ayrıca Windows'ta sistem proxy ayarlarını da alır. Kalan bir değer beklentilerinizi geçersiz kılar. session.trust_env = False'ü ayarlayın ya da proxyleri her istekte açıkça belirtin.

Proxy adresinin önüne http:// mı yoksa https:// mi yazmalıyım?

Sitede HTTPS kullanılsa bile HTTP proxy için http:// yazın. Scheme, istemcinizin proxy ile nasıl konuştuğunu belirtir. https:// yazmak, yeni urllib3 sürümlerinde proxy ile TLS başlatır; bu ise HTTP proxy portunda SSL hatasıyla başarısız olur.

Bu referanstaki diğer proxy hataları

HTTP durum kodları

Tarayıcı ve istemci hataları

Bağlantı ve TLS hataları

Başarısızlık durumları için dokümanlı konut proxy'ler

$0,50/GB sitesinden süresi hiç bitmeyen CrawlRelay konut proxy

$0,50/GB · KYC olmadan

Başlayın