Ahoj lidi, jak se všichni máte? Doufám, že jste všichni v pořádku. Dnes spouštím svůj proxy v požadavku, ale dává mi to následující chybu ValueError: check_hostname vyžaduje server_hostname v Krajta. Zde vám tedy vysvětlím všechna možná řešení.

Aniž byste plýtvali časem, začněme tímto článkem, abychom tuto chybu vyřešili.

Jak ValueError: check_hostname vyžaduje server_hostname Došlo k chybě?

Spouštím svůj proxy v požadavku, ale zobrazuje mi následující chybu.

raise ValueError("check_hostname requires server_hostname")
ValueError: check_hostname requires server_hostname

Zde je Můj kód

proxyArr ={
    'http':'http://my correct proxy here: myport',
    'https':'https://my correct proxy here: myport'
}
self.response=requests.get(url=url,headers=self.headers,proxies=proxyArr )

Jak vyřešit ValueError: check_hostname vyžaduje server_hostname Chyba?

  1. Jak vyřešit ValueError: check_hostname vyžaduje server_hostname Chyba?

    Řešení ValueError: check_hostname vyžaduje server_hostname Error V urllib3 verze 1.25.11 funguje perfektně. Takže můžete nainstalovat urllib3 1.25.11 následováním příkazového řádku. Ve skutečnosti urllib3 bylo změněno hlavní schéma proxy a pokud používáte urllib3=1.26.4 pak postupujte podle níže uvedeného kódu. Stačí spustit downgrade verze urllib3 spuštěním tohoto příkazu. Můžete použít pip install urllib3==1.25.8.

Řešení 1: Použijte urllib3 1.25.11

Ve verzi urllib3 1.25.11 funguje perfektně. Takže můžete nainstalovat urllib3 1.25.11 pomocí následujícího příkazového řádku.

pip install urllib3==1.25.11

Řešení 2: urllib3 se změnilo hlavní schéma

Ve skutečnosti urllib3 hlavní schéma proxy bylo změněno a pokud používáte urllib3=1.26.4 pak postupujte podle níže uvedeného kódu.

Zde je starý kód před změnou schématu proxy

proxyArr ={
    'http':'http://my correct proxy here: myport',
    'https':'https://my correct proxy here: myport'
}
self.response=requests.get(url=url,headers=self.headers,proxies=proxyArr )

Zde je nový kód poté, co bylo změněno schéma proxy.

proxyArr = {'https': 'http://8.88.888.8:8888'} 

self.response=requests.get(url=url,headers=self.headers,proxies=proxyArr )

Řešení 3: Přejděte na nižší verzi urllib3

Stačí spustit downgrade verze urllib3 spuštěním tohoto příkazu.

Můžeš použít pip install urllib3==1.25.8

Letní

Je to všechno o tomto problému. Doufám, že vám všechna řešení hodně pomohla. Komentáře níže Vaše myšlenky a dotazy. Níže také napište, jaké řešení pro vás fungovalo?

Přečtěte si také