Maison > Article > développement back-end > Solution : urllib3 ProxySchemeUnknown (proxy.scheme)
L'erreur ProxySchemeUnknown (proxy.scheme) de urllib3 est généralement causée par l'utilisation d'un protocole proxy non pris en charge. Dans ce cas, urllib3 ne reconnaît pas le type de protocole du serveur proxy et ne peut donc pas utiliser le proxy pour la connexion réseau. Pour résoudre ce problème, vous devez vous assurer que vous utilisez un protocole proxy pris en charge, tel que Http ou https
Pour résoudre ce problème, vous devez vous assurer que vous utilisez un. protocole proxy pris en charge, tel que HTTP ou HTTPS.
Vous pouvez résoudre ce problème en définissant les paramètres proxy de urllib3.
Si vous utilisez un proxy http, l'exemple de code est le suivant :
import urllib3 http = urllib3.PoolManager() proxy = urllib3.ProxyManager('http://proxy.server:3128') r = proxy.request('GET', 'http://httpbin.org/ip') print(r.data)
Si vous utilisez le proxy https, l'exemple de code est le suivant :
import urllib3 https = urllib3.PoolManager() proxy = urllib3.ProxyManager('https://proxy.server:3128') r = proxy.request('GET', 'https://httpbin.org/ip') print(r.data)
Si vous utilisez une bibliothèque ou un framework tiers, vous devriez consulter leur documentation pour des informations plus détaillées.
De plus, il convient de noter que l'utilisation d'un proxy nécessite une authentification du serveur proxy. Si une authentification est requise, le nom d'utilisateur et le mot de passe doivent être transmis lors de la création de l'objet proxy.
Oui, si vous devez authentifier le proxy à l'aide d'un nom d'utilisateur et d'un mot de passe, vous pouvez utiliser la classe ProxyManager d'urllib3 et transmettre le nom d'utilisateur et le mot de passe pour configurer l'authentification.
L'exemple de code est le suivant :
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)
ou
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)
Si vous utilisez une bibliothèque ou un framework tiers, vous devriez consulter leur documentation pour des informations plus détaillées.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!