EnvironmentError在pipconf中使用私有注册表在公共注册表上安装软件包

时间:2020-10-14 19:18:05

标签: python pip

我有一个私有PyPi注册表,我的公司用来托管内部Python程序包。我已经设置了我的机器,以使用~/.pip/pip.conf通过私有注册表来处理依赖关系的安装:

[global]
extra-index-url = https://****:****@company.jfrog.io/artifactory/api/pypi/pypi-local/simple
trusted-host = company.jfrog.io

现在,当我尝试使用pip install internal_pkg时,一切正常。但是,当我尝试pip install pandas(例如)时,出现以下错误:

Looking in indexes: https://pypi.org/simple, https://****:****@parkmobile.jfrog.io/artifactory/api/pypi/pypi-local/simple
Collecting pandas
ERROR: Could not install packages due to an EnvironmentError: Failed to parse: https://****:****@company.jfrog.io/artifactory/api/pypi/pypi-local/simple/pandas/

请注意,我的用户名是我的公司电子邮件,因此具有@.符号。

我试图了解为什么这失败了。我如何设置pip.conf,使其在我的私有注册表中首先出现,但是例如,如果在私有文件上未找到包名,则查看pypi.org

谢谢!

1 个答案:

答案 0 :(得分:1)

就像这里解释的:PIP how escape character # in password?

您可以URL encode“有问题”的字符。
您可以将@编码为%40