Heim  >  Artikel  >  Backend-Entwicklung  >  Lösung: urllib3 ProxySchemeUnknown(proxy.scheme)

Lösung: urllib3 ProxySchemeUnknown(proxy.scheme)

WBOY
WBOYnach vorne
2024-02-29 19:01:23484Durchsuche

解决方案:urllib3 ProxySchemeUnknown(proxy.scheme)

Ursache der Fehlerberichterstattung

ProxySchemeUnknown(proxy.scheme)-Fehler von urllib3 wird normalerweise durch die Verwendung eines nicht unterstützten Proxy-Protokolls verursacht. In diesem Fall erkennt urllib3 den Protokolltyp des Proxy-Servers nicht und kann daher den Proxy nicht für die Netzwerk-Verbindung verwenden. Um dieses Problem zu beheben, müssen Sie sicherstellen, dass Sie ein unterstütztes Proxy-Protokoll verwenden, z. B. Http oder https

So beheben Sie das Problem: Sie müssen sicherstellen, dass Sie ein verwenden unterstütztes Proxy-Protokoll wie HTTP oder HTTPS.

Sie können dieses Problem lösen, indem Sie die Proxy-Parameter von urllib3 festlegen.

Wenn Sie einen HTTP-Proxy verwenden, lautet das Codebeispiel wie folgt:

import urllib3

http = urllib3.PoolManager()

proxy = urllib3.ProxyManager('http://proxy.server:3128')

r = proxy.request('GET', 'http://httpbin.org/ip')

print(r.data)

Wenn Sie einen https-Proxy verwenden, lautet das Codebeispiel wie folgt:

import urllib3

https = urllib3.PoolManager()

proxy = urllib3.ProxyManager('https://proxy.server:3128')

r = proxy.request('GET', 'https://httpbin.org/ip')

print(r.data)

Wenn Sie eine Bibliothek oder ein

Framework

eines Drittanbieters verwenden, sollten Sie deren Dokumentation auf detailliertere Informationen prüfen. Außerdem ist zu beachten, dass die Verwendung eines Proxys eine Authentifizierung des Proxyservers erfordert. Wenn eine Authentifizierung erforderlich ist, müssen beim Erstellen des Proxyobjekts der Benutzername und das Passwort übergeben werden.

Anwendungsbeispiel

Ja, wenn Sie den Proxy mit Benutzername und Passwort authentifizieren müssen, können Sie die ProxyManager-Klasse von urllib3 verwenden und den Benutzernamen und das Passwort übergeben, um die Authentifizierung einzurichten.

Das Codebeispiel lautet wie folgt:

import urllib3

proxy = urllib3.ProxyManager('http://proxy.server:3128',
 proxy_username='username',
 proxy_passWord='password')

r = proxy.request('GET', 'http://httpbin.org/ip')

print(r.data)

oder

import urllib3

proxy = urllib3.ProxyManager('https://proxy.server:3128',
 proxy_username='username',
 proxy_password='password')

r = proxy.request('GET', 'https://httpbin.org/ip')

print(r.data)

Wenn Sie eine Bibliothek oder ein Framework eines Drittanbieters verwenden, sollten Sie deren Dokumentation auf detailliertere Informationen prüfen.

Das obige ist der detaillierte Inhalt vonLösung: urllib3 ProxySchemeUnknown(proxy.scheme). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:lsjlt.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen