【问题标题】:pip install doesnt work , InvalidSchema: Missing dependencies for SOCKS supportpip install 不起作用,InvalidSchema:缺少对 SOCKS 支持的依赖项
【发布时间】:2017-04-16 23:58:20
【问题描述】:

我被这个错误吓坏了 2 天。 2 天前激活了我的 virtualenv,然后尝试安装一些依赖项,但 pip install 不断抛出此错误。

pip install django
Traceback (most recent call last):
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/commands/install.py", line 335, in run
    wb.build(autobuilding=True)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/wheel.py", line 749, in build
    self.requirement_set.prepare_files(self.finder)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/req/req_set.py", line 554, in _prepare_file
    require_hashes
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/req/req_install.py", line 278, in populate_link
    self.link = finder.find_requirement(self, upgrade)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/index.py", line 465, in find_requirement
    all_candidates = self.find_all_candidates(req.name)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/index.py", line 423, in find_all_candidates
    for page in self._get_pages(url_locations, project_name):
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/index.py", line 568, in _get_pages
    page = self._get_page(location)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/index.py", line 683, in _get_page
    return HTMLPage.get_page(link, session=self.session)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/index.py", line 792, in get_page
    "Cache-Control": "max-age=600",
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 488, in get
    return self.request('GET', url, **kwargs)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/download.py", line 386, in request
    return super(PipSession, self).request(method, url, *args, **kwargs)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 475, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/sessions.py", line 596, in send
    r = adapter.send(request, **kwargs)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/cachecontrol/adapter.py", line 47, in send
    resp = super(CacheControlAdapter, self).send(request, **kw)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py", line 390, in send
    conn = self.get_connection(request.url, proxies)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py", line 290, in get_connection
    proxy_manager = self.proxy_manager_for(proxy)
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py", line 184, in proxy_manager_for
    **proxy_kwargs
  File "/home/blackpython/.local/lib/python2.7/site-packages/pip/_vendor/requests/adapters.py", line 43, in SOCKSProxyManager
    raise InvalidSchema("Missing dependencies for SOCKS support.")
InvalidSchema: Missing dependencies for SOCKS support.

我尝试安装 request[socks],但我收到一条错误消息,提示无法识别 socks 版本

printenv | grep -i proxy
NO_PROXY=localhost,127.0.0.0/8,::1
http_proxy=http://proxy.iiit.ac.in:8080/
FTP_PROXY=http://proxy.iiit.ac.in:8080/
ftp_proxy=http://proxy.iiit.ac.in:8080/
all_proxy=socks://proxy.iiit.ac.in:8080/
ALL_PROXY=socks://proxy.iiit.ac.in:8080/
https_proxy=http://proxy.iiit.ac.in:8080/
HTTPS_PROXY=http://proxy.iiit.ac.in:8080/
no_proxy=localhost,127.0.0.0/8,::1
HTTP_PROXY=http://proxy.iiit.ac.in:8080/

这是我系统上的代理设置,谁能帮我解决这个问题? 谢谢 编辑:我厌倦了重新安装 ubuntu,我仍然面临这个错误

【问题讨论】:

标签: python pip socks


【解决方案1】:
  1. 在您的情况下,取消设置 socks 代理: unset all_proxy unset ALL_PROXY
  2. 安装缺少的依赖项: pip install pysocks
  3. 重置代理、source .bashrcpip install 再次与 socks 代理一起工作。

【讨论】:

    【解决方案2】:

    这对我有用pip install --user --proxy https://user:pass@proxyaddress:port django

    【讨论】:

      【解决方案3】:

      在激活 venv 之后,我也无法安装 Django 和其他东西,而不是我最终这样做了 [1]

      type: sudo gedit .bashrc #or any text editor if gedit is not there 
      
            add this line at the last of your .bashrc file 
            export all_proxy="https://your_proxy:your_port/"
      

      保存它应该工作的更改。谢谢

      参考。 [1]https://stackoverflow.com/a/39959360/4706745

      【讨论】:

        【解决方案4】:

        使用

        卸载已安装的包
        pip uninstall packagename
        

        并设置代理

        http_proxy=http://username:password@host:port/
        https_proxy=https://username:password@host:port/ 
        

        并尝试使用安装

        pip install packagename
        

        【讨论】:

          猜你喜欢
          • 2019-08-09
          • 2019-08-15
          • 1970-01-01
          • 2013-11-20
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多