Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/356.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 从一个或多个需求文件从多个服务器安装包_Python_Pip - Fatal编程技术网

Python 从一个或多个需求文件从多个服务器安装包

Python 从一个或多个需求文件从多个服务器安装包,python,pip,Python,Pip,我尝试过以下两种方法,但都没有成功 第一个是级联需求文件 # requirements.txt -r requirements/req2.txt -r requirements/req3.txt pip安装-r requirements.txt导致pip找不到Django 第二次尝试是在单个文件中包含这两个需求: -i https://pypi.python.org/pypi/ Django==1.7.7 -i https://testpypi.python.org/pypi foo-bar=

我尝试过以下两种方法,但都没有成功

第一个是级联需求文件

# requirements.txt
-r requirements/req2.txt
-r requirements/req3.txt
pip安装-r requirements.txt
导致
pip
找不到Django

第二次尝试是在单个文件中包含这两个需求:

-i https://pypi.python.org/pypi/
Django==1.7.7
-i https://testpypi.python.org/pypi
foo-bar==0.4
pip安装-r requirements.txt
会导致相同的错误,
pip
找不到Django


如何使用
pip
安装来自不同服务器/索引url的软件包?

无论哪种情况,解决方案都是在
requirements.txt
文件的开头添加
--额外的索引url

例如:

# requirements.txt
--extra-index-url https://testpypi.python.org/pypi
Django==1.7.7
django-stackexchange-feed==0.4
或使用级联需求文件:

# requirements.txt
--extra-index-url https://testpypi.python.org/pypi
-r requirements/req2.txt
-r requirements/req3.txt

pip安装-r requirements.txt
现在可以工作了。

这对什么有用?我需要它来部署到Heroku。要安装应用程序依赖项,Heroku将调用
pip install-r requirements.txt
,因此我需要在一个
pip
可读入口点下的多个索引上定义包。我也可以想象其他的用途,但我对Python社区还很陌生,所以我不敢去猜测。我昨天花了几个小时试图找出如何做到这一点,所以我想我会分享这些发现。
# requirements.txt
--extra-index-url https://testpypi.python.org/pypi
Django==1.7.7
django-stackexchange-feed==0.4
# requirements.txt
--extra-index-url https://testpypi.python.org/pypi
-r requirements/req2.txt
-r requirements/req3.txt
# requirements/req2.txt
Django==1.7.7
# requirements/req3.txt
foo-bar==0.4