如何从GitHub安装Python包?

Col*_*nic 179 python pip

我想使用httpie的新功能.此功能在github repo https://github.com/jkbr/httpie中,但不在python包索引https://pypi.python.org/pypi/httpie的发行版中

如何从github repo安装httpie包?我试过了

pip install https://github.com/jkbr/httpie
Run Code Online (Sandbox Code Playgroud)

但我得到一个错误'无法解压'


在Nodejs中,我可以像这样从github安装包

npm install git+https://github.com/substack/node-optimist.git
Run Code Online (Sandbox Code Playgroud)

Mar*_*ers 327

您需要使用正确的git URL:

pip install git+git://github.com/jkbr/httpie.git
Run Code Online (Sandbox Code Playgroud)

要么

pip install git+https://github.com/jkbr/httpie.git
Run Code Online (Sandbox Code Playgroud)

另请参阅pip文档的VCS Support部分.

  • 另一个[安装选项](https://github.com/jkbr/httpie#installation)不需要安装Git:`pip install --upgrade https:// github.com/jkbr/httpie/tarball/master` (40认同)
  • 请注意,上述答案并不完美."Pip freeze> requirements.txt"将创建一个文件,假设依赖项位于pypi中.相反,使用"pip install -e git:// [github URL.git]#egg = egg_name"然后pip冻结将给出其他人也可以使用的输出! (14认同)
  • @Nicofisi:是的,在URL上附加了`@ <branchname>`.请参阅[VCS支持文档](https://pip.pypa.io/en/stable/reference/pip_install/#vcs-support). (3认同)

Sag*_*she 68

要从github安装Python包,您需要克隆该存储库.

git clone https://github.com/jkbr/httpie.git
Run Code Online (Sandbox Code Playgroud)

然后只需从该目录运行setup.py文件,

sudo python setup.py install
Run Code Online (Sandbox Code Playgroud)

  • 通常python github repo没有setup.py文件...请参阅https://github.com/tyiannak/pyAudioAnalysis (6认同)
  • 在开发模式下安装它,无需 sudo:从克隆存储库的根目录中运行 `pip install -e .` 此解决方案有 2 个好处: 1. 您可以在主项目目录中安装包。1. 软件包包含 `.git` 目录,因此它是常规的 Git 存储库。您可以立即将叉子推到叉子上。[这一点的功劳来自所提到的问题的@avalanchy] (6认同)
  • 从本地克隆的repo目录中的`pip install .`也可以使用。 (2认同)
  • @trthhrtz:这意味着该软件包不兼容并且不符合https://packaging.python.org/guides/distributing-packages-using-setuptools/中定义的要求 (2认同)