python的pip是否支持http身份验证?

时间:2009-03-13 17:25:57

标签: python easy-install pip

正如标题所说,pip是否支持http身份验证,就像easy_install一样?

如果没有,是否有任何(更好的)替代方案来运行私有包存储库?我看到pip可以访问源代码库(git,svn等),但是可以使用版本要求吗?

4 个答案:

答案 0 :(得分:4)

对于仍在搜索答案的人,您可以使用以下语法:

pip install -r https://user:pass@domain.com/path/requirements.txt

如果您需要验证其证书使用,还可以使用:

pip install --cert host.pem -r https://user:pass@domain.com/path/requirements.txt

这是在努力:

$ pip --version
pip 1.5.4 from /usr/local/lib/python2.7/dist-packages (python 2.7)

升级你的点子:

pip install --upgrade pip

答案 1 :(得分:3)

pip uses urllib2.urlopen()来获取文件。 urllib2.urlopen()支持HTTP身份验证,但pip在构建其opener时似乎不会安装HTTPBasicAuthHandler。增加这样的支持将是微不足道的;您可以解析user:password的URL或接受与命令行参数相同的信息。 feedparser支持subclassing urllib2.HTTPDigestAuthHandler的两种方法。

答案 2 :(得分:2)

目前,简单的pip不支持身份验证。

the main author of pip thinks that feature is desirable可能会出现在中期的未来。还有an item in the PIP trac包含启用http auth的补丁。

答案 3 :(得分:2)

仅供参考,目前正在http_auth_index分支中进行处理,这将允许使用基本身份验证进行自定义索引。