如何使用pip与socks代理?

时间:2014-04-07 14:44:17

标签: macos proxy pip

我使用ssh -D创建套接字代理,想知道如何使用pip(或easy_install)吗?我找到了this question,但那是一个http代理。

另外,请给我一个在OS X下运行的解决方案。(我尝试了proxifier,它适用于pip install,但不适用于sudo pip install

7 个答案:

答案 0 :(得分:9)

使用socks proxifier,例如proxychains

命令点将像proxychains pip install package_name

或使用another proxifier

答案 1 :(得分:4)

最简单的方法,也适用于许多操作系统:

pip install pysocks
pip install <yourpacakge> --proxy socks5:127.0.0.1:8123

根据需要替换短袜4,以及您自己的ip /端口。

答案 2 :(得分:2)

对于CentOS,您可以使用privoxy将socks5代理转换为http代理。

yum install privoxy

然后编辑/etc/privoxy/config,在文件末尾添加:

forward-socks5 / 127.0.0.1:1080 .

它会将socks5代理从1080转换为http代理8118。然后,您可以在pip配置文件中指定代理:

[global]
proxy = 127.0.0.1:8118

请勿使用polipo,因为它已被弃用。

答案 3 :(得分:1)

没关系, - .proxy似乎仅适用于http(s)代理。

来自“pip --help”

--proxy <proxy>             Specify a proxy in the form
                          [user:passwd@]proxy.server:port.

编辑:我终于放弃了sock代理并在我的远程机器上运行了一个java http代理(jhttp2.sourceforge.net/)并使用ssh -L port:localhost:port将端口转发到远程机器并使用那个http代理。

答案 4 :(得分:0)

首先,您可以尝试使用

安装proxychains-ng
  

brew install proxychains-ng

可以尝试使用像ssh -D这样的socks5代理

  

ssh -D 12345 -fqN root @ [your-vps-ip]

并使用公钥或密码访问您的vps

然后,您同时拥有代理链和袜子5。

现在编辑/etc/proxychains.conf,只需在其末尾添加此行

socks5  127.0.0.1 12345

对此发表评论

socks4  127.0.0.1 9050

最后

  

proxychains4 pip安装[无论您想要什么]

答案 5 :(得分:0)

运行以下两个命令:

pip install pysocks5
pip install --proxy socks5://[user:passwd@]proxy.server:port something

答案 6 :(得分:0)

正如其他用户发布的那样,以下内容适用于通过远程主机使用 pip:

# SOCKS4 proxy creation
ssh -D9999 <remote host URI>
# use pip with the previously created proxy connection (requires pysocks)
python3 -m pip install <package name> --proxy socks5:localhost:9999

引导

“但我需要 pysocks 来通过代理运行 pip,你无法连接到 pypi 来下载包,因为我没有正常运行的 pip”

解决这个问题的一种方法是在另一台机器上下载 pysocks wheel 包:

python3 -m pip download pysocks

这会将 pysocks 包下载到您的机器上。将 PySocks-x-x-x-py3-none-any.whl 文件传输到需要代理功能的机器上并安装:

python3 -m pip install PySocks*.whl