【问题标题】:Does python's pip support http authentication?python的pip是否支持http认证?
【发布时间】:2010-10-13 05:26:03
【问题描述】:

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

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

【问题讨论】:

标签: python easy-install pip


【解决方案1】:

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

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,请执行以下操作:

pip install --upgrade pip

【讨论】:

  • 不使用明文密码就无法做到这一点?
  • 我刚刚发现了这个:github.com/pypa/pip/pull/5952。看来您可以将密钥环与 pip 一起使用,但我找不到任何使用文档。 pip 似乎也支持~. 中的.netrc 文件,但同样没有使用文档。
【解决方案2】:

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

【讨论】:

    【解决方案3】:

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

    但是the main author of pip thinks that feature is desirable 所以它可能会在中期出现。还有an item in the PIP trac 包含一个启用http auth 的补丁。

    【讨论】:

      【解决方案4】:

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

      【讨论】:

        猜你喜欢
        • 2011-06-28
        • 1970-01-01
        • 1970-01-01
        • 2015-08-31
        • 2016-06-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多