<p>request.exceptions.InvalidSchema: Faltan dependencias para el soporte de SOCKS.</p>

Creado en 17 ago. 2016  ·  7Comentarios  ·  Fuente: psf/requests

Hola lista
Tengo un problema Faltan dependencias para el soporte de SOCKS. con módulo de solicitudes versión 2.11,

pero con la versión 2.10 del módulo de solicitudes, el módulo de solicitudes funciona bien

mi entorno:
declare -x VIRTUAL_ENV = "/ home / hadn / python3"
declarar -x VTE_VERSION = "3803"
declare -x WINDOWID = "33554439"
declare -x WINDOWPATH = "1"
declare -x XAUTHORITY = "/ ejecutar / gdm / auth-for-hadn-0O4FTR / database"
declare -x XDG_CURRENT_DESKTOP = "GNOME- Clásico: GNOME "
declarar -x XDG_MENU_PREFIX = "gnome-"
declare -x XDG_RUNTIME_DIR = "/ run / user / 1000"
declare -x XDG_SEAT = "seat0"
declare -x XDG_SESSION_DESKTOP = "gnome-classic"
declare -x XDG_SESSION_ID = "2"
declarar -x XDG_VTNR = "1"
declare -x XMODIFIERS = "@ im = ibus"
declare -x _system_arch = "x86_64"
declare -x _system_name = "CentOS"
declare -x _system_type = "Linux"
declare -x _system_version = "7"
declare -x all_proxy = " calcetines: //proxy.hcm.fpt.vn : 80 /"
declare -x ftp_proxy = " http://proxy.hcm.fpt.vn : 80 /"
declare -x http_proxy = " http://proxy.hcm.fpt.vn : 80 /"
declare -x https_proxy = " http://proxy.hcm.fpt.vn : 80 /"

(python3) [ hadn @ rad-hadn4 ~] $ /home/hadn/Laravel/learning_bootstrap_v4/film/film_le.sh
Rastreo (llamadas recientes más última):
Archivo "/home/hadn/Laravel/learning_bootstrap_v4/film/film_le_crawler_page_1.py", línea 24, en
html_content = session.get (url)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py", línea 483, en get
return self.request ('OBTENER', url, * _kwargs)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py", línea 471, en solicitud
resp = self.send (preparación, * _send_kwargs)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/sessions.py", línea 581, en enviar
r = adapter.send (solicitud, * _kwargs)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py", línea 384, en enviar
conn = self.get_connection (request.url, proxies)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py", línea 287, en get_connection
proxy_manager = self.proxy_manager_for (proxy)
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py", línea 183, en proxy_manager_for
* _proxy_kwargs
Archivo "/home/hadn/python3/lib/python3.4/site-packages/requests/adapters.py", línea 43, en SOCKSProxyManager
raise InvalidSchema ("Faltan dependencias para la compatibilidad con SOCKS")
request.exceptions.InvalidSchema: Faltan dependencias para el soporte de SOCKS.

Comentario más útil

$ pip install requests[socks]

Todos 7 comentarios

$ pip install requests[socks]

El problema específico aquí es que en 2.11 comenzamos a admitir all_proxy , que ha configurado como un proxy SOCKS. Eso significa que intentaríamos usar el proxy SOCKS y fallaríamos.

@Lukasa @kennethreitz ¿ puedo tener la opción de deshabilitar el proxy SOCKS ???

@ alochym01 Si no lo desea, ¿por qué está configurado en su entorno? Independientemente, si usa una sesión con trust_env=False ese problema ya no ocurrirá, aunque perderá el proxy HTTP de su entorno.

Sin embargo, parece que hay un error aquí: las solicitudes preferirán all_proxy a un proxy específico del esquema. Creo que es una mala idea. @ sigmavirus24 , ¿deberíamos reordenar eso?

@Lukasa Entonces, según tengo entendido, all_proxy es lo que debería usarse si http(s)_proxy está configurado. Y en un sentido más general, debería usarse si <protocol>_proxy está configurado. Entonces, en base a ese entendimiento (y asumiendo que estoy en lo correcto), definitivamente deberíamos reordenar eso. Presentemos un nuevo error para eso.

@ alochym01 Otra opción parece ser usar proxies={'all': None} .

@Lukasa proxies = {'all': None} no funciona porque la red debería pasar por proxy, así que veo que abriste el nuevo problema :)
Sigamos el nuevo número: +1:

¿Fue útil esta página
0 / 5 - 0 calificaciones