如何不使用pip install从tar.gz文件安装Python软件包


80

长话短说,我的工作计算机有网络限制,这意味着尝试pip install在cmd中使用只会导致超时/找不到包错误。

例如; 当我尝试pip install seaborn在此处输入图片说明

相反,我尝试下载所需软件包的tar.gz文件,但是,我不知道如何安装它们。我已经从tar.gz文件中提取了文件,并且里面有一个“设置”文件,但是对我来说并没有多大作用。

如果有人可以解释如何以这种方式安装python软件包而无需pip install在Windows上使用,那将是惊人的。

Answers:


126

您可以pip在不使用网络的情况下使用它。请参阅文档(搜索“安装特定的源归档文件”)。任何这些都应该起作用:

pip install relative_path_to_seaborn.tar.gz    
pip install absolute_path_to_seaborn.tar.gz    
pip install file:///absolute_path_to_seaborn.tar.gz    

或者,您可以解压缩归档文件并setup.py直接与pip或一起使用python

cd directory_containing_tar.gz
tar -xvzf seaborn-0.10.1.tar.gz
pip install seaborn-0.10.1
python setup.py install

当然,在继续之前,您还应该下载所需的软件包并以相同的方式安装它们。


这给出了以下错误:You must give at least one requirement to install (maybe you meant "pip install file:///absolute path.."?)
yenoolnairb

我真的进入了这条路,以防您想知道!
yenoolnairb '16

如果您可以在另一台计算机上下载并将它们带过来,则可以下载所需的每个依赖项,并以这种方式安装它们,以使所需的软件包满足所有依赖项,并且不再需要网络连接。即,A取决于B。所以安装B,然后A
霍金斯

24

您可以安装tarball,而无需先解压缩。只需.tar.gz从命令提示符处导航到包含文件的目录,然后输入以下命令:

pip install my-tarball-file-name.tar.gz

我正在运行python 3.4.3,这对我有用。我不知道这是否可以在其他版本的python上使用。


3
在python 3.4.3和pip 9.0.1上运行此文件时,我收到一个与临时文件有关的错误: [Errno 2] No such file or directory: '/tmp/pip-anjip21-build/setup.py 在Jessie(树莓派3)上运行
Magic_Matt_Man

@Magic请参阅官方文档中示例。所以它应该工作。从显示的错误消息看来,您尝试安装的tarball似乎没有遵循正确的文件命名约定。
Sнаđошƒаӽ

1
pip install * .tar.gz将在目录中安装所有软件包...只是在试图提供帮助:)
Lev

9

多亏了以下答案,我才能正常工作。

  • 首先需要将tar.gz文件解压缩到一个文件夹中。
  • 然后在运行之前python setup.py install必须将cmd指向正确的文件夹。我这样做是pushd C:\Users\absolutefilepathtotarunpackedfolder
  • 然后跑 python setup.py install

感谢Tales Padua和Hugo Honorem


您可以编辑机器的PATH变量吗?如果是这样,您可以在其中添加python,并在任何地方使用python,而无需使用pushd
TalesPádua16

实际上,您不必解压缩tar.gz文件即可安装它。看看我的答案
Sнаđошƒаӽ

6

通过运行安装

python setup.py install

更好的是,您可以从github下载。通过安装git apt-get install git,然后按照以下步骤操作:

git clone https://github.com/mwaskom/seaborn.git
cd seaborn
python setup.py install

No such file or directory 这可能与我的文件和文件夹的设置有关。Python不会进入Python通常安装的默认位置
yenoolnairb

从tar中解压缩,转到setup.py所在的文件夹,然后运行上面的命令
TalesPádua16

我是否需要修改上面的代码以将其直接指向解压后的tar所在的位置?Cos我仍然在收到no such file or directory
yenoolnairb '16

将tar.gz解压缩到某个地方。然后,从终端转到您提取它的文件夹。您需要位于setup.py所在的文件夹中,然后运行以下命令
TalesPádua16

Unfortunatley github在我的工作计算机上被阻止了!!我现在已经开始工作了;谢谢
yenoolnairb '16

4

对于使用python3的用户,您可以使用:

python3 setup.py install

3

如果您根本不想使用PIP安装,则可以执行以下操作:

1)下载软件包2)使用7 zip解压缩tar文件。(再次使用7 zip,直到看到您要查找的软件包名称旁边的文件夹为止。例如:wordcloud)

文件夹名称为“ wordcloud”

3)找到安装了python的Python库文件夹,然后将'WordCloud'文件夹本身粘贴到此处

Python库文件夹

4)成功!现在,您可以导入库并开始使用该包。

在此处输入图片说明


1
此作品完美的情况下使用PIP产生error(10054, 'An existing connection was forcibly closed by the remote host')
埃丁

0

您可以sudo apt-get install python-seaborn代替使用吗?基本上tar.gz只是一个包含设置的zip文件,因此您要做的是将其解压缩,将cd解压缩到下载该文件的位置并gunzip -c seaborn-0.7.0.tar.gz | tar xf -用于linux。将字典更改为新的seaborn解压缩文件并执行python setup.py install


Okey,所以他可以使用另一个拉链,例如7拉链,这与他使用的拉链完全无关
。.– Deusdeorum

无论如何,说明可能是:将文件夹解压缩->将命令行中的词典更改到该文件夹​​中->执行python setup.py install
Deusdeorum,2016年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.