当我尝试使用
pip install
时,它不断抛出此错误。
$ pip install django
ERROR: Could not install packages due to an OSError: Missing dependencies for SOCKS support.
我尝试安装
request[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/
unset all_proxy
unset ALL_PROXY
pip install pysocks
source .bashrc
和pip install
再次与socks代理一起使用。激活 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/"
保存它应该起作用的更改。谢谢
这对我有用
pip install --user --proxy https://user:pass@proxyaddress:port django
如果访问互联网必须通过 SOCKS 代理,则
pip install pysocks
的标准命令将永远无法工作,因为安装提供它的包时不会有所需的 SOCKS 支持,这实际上是先有鸡还是先有蛋的问题问题。
要解决此问题,请导航到 https://pypi.org/project/PySocks/#files,下载与所使用的 Python 版本相关的轮子,然后使用
pip install -U /path/to/wheel
手动安装它,例如
$ pip install -U pip
ERROR: Could not install packages due to an OSError: Missing dependencies for SOCKS support.
$ pip install pysocks
ERROR: Could not install packages due to an OSError: Missing dependencies for SOCKS support.
$ wget https://files.pythonhosted.org/.../PySocks-1.7.1-py3-none-any.whl
...
2024-04-06 00:00:00 (84.5 MB/s) - ‘PySocks-1.7.1-py3-none-any.whl’ saved [16725/16725]
$ pip install -U PySocks-1.7.1-py3-none-any.whl
...
Successfully installed PySocks-1.7.1
$ pip install -U pip
...
Successfully installed pip-24.0
在上面的示例中,我使用了
wget
,它可能在您的平台上不可用,因此您可能需要使用替代命令,或者只需使用网络浏览器(最常见于 Windows)来下载文件,然后使用在下载文件的路径上使用相同的 pip install -U
命令。
使用
卸载已安装的软件包pip uninstall packagename
并设置代理
http_proxy=http://username:password@host:port/
https_proxy=https://username:password@host:port/
并尝试使用
安装pip install packagename