给定可以与pip一起安装的Python软件包的名称,是否有任何方法可以找到pip可以安装的所有可能版本的列表? 现在是反复试验。
我正在尝试为第三方库安装一个版本,但是最新版本太新了,进行了向后不兼容的更改。 所以我想以某种方式列出pip知道的所有版本,以便我可以对其进行测试。
#1楼
https://pypi.python.org/pypi/Django/-适用于维护者选择显示所有软件包的软件包https://pypi.python.org/simple/pip/-无论如何都应该做到这一点(列出所有链接)
#2楼
更新:
从2017年9月开始,此方法不再起作用: --no-install
在pip 7中删除了--no-install
使用pip install -v
,您可以看到所有可用的版本。
root@node7:~# pip install web.py -v
Downloading/unpacking web.py
Using version 0.37 (newest of versions: 0.37, 0.36, 0.35, 0.34, 0.33, 0.33, 0.32, 0.31, 0.22, 0.2)
Downloading web.py-0.37.tar.gz (90Kb): 90Kb downloaded
Running setup.py egg_info for package web.py
running egg_info
creating pip-egg-info/web.py.egg-info
要不安装任何软件包,请使用以下解决方案之一:
root@node7:~# pip install --no-deps --no-install flask -v
Downloading/unpacking flask
Using version 0.10.1 (newest of versions: 0.10.1, 0.10, 0.9, 0.8.1, 0.8, 0.7.2, 0.7.1, 0.7, 0.6.1, 0.6, 0.5.2, 0.5.1, 0.5, 0.4, 0.3.1, 0.3, 0.2, 0.1)
Downloading Flask-0.10.1.tar.gz (544Kb): 544Kb downloaded
要么
root@node7:~# cd $(mktemp -d)
root@node7:/tmp/tmp.c6H99cWD0g# pip install flask -d . -v
Downloading/unpacking flask
Using version 0.10.1 (newest of versions: 0.10.1, 0.10, 0.9, 0.8.1, 0.8, 0.7.2, 0.7.1, 0.7, 0.6.1, 0.6, 0.5.2, 0.5.1, 0.5, 0.4, 0.3.1, 0.3, 0.2, 0.1)
Downloading Flask-0.10.1.tar.gz (544Kb): 4.1Kb downloaded
经过pip 1.0测试
root@node7:~# pip --version
pip 1.0 from /usr/lib/python2.7/dist-packages (python 2.7)
#3楼
您可以使用yolk3k软件包而不是yolk。 yolk3k是原始蛋黄的叉子,它同时支持python2和3。
pip install yolk3k
#4楼
对于> = 9.0的点
$ pip install pylibmc==
Collecting pylibmc==
Could not find a version that satisfies the requirement pylibmc== (from
versions: 0.2, 0.3, 0.4, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5, 0.5, 0.6.1, 0.6,
0.7.1, 0.7.2, 0.7.3, 0.7.4, 0.7, 0.8.1, 0.8.2, 0.8, 0.9.1, 0.9.2, 0.9,
1.0-alpha, 1.0-beta, 1.0, 1.1.1, 1.1, 1.2.0, 1.2.1, 1.2.2, 1.2.3, 1.3.0)
No matching distribution found for pylibmc==
–将打印所有可用版本,而无需实际下载或安装任何其他软件包。
对于pip <9.0使用
pip install pylibmc==blork
其中blork
可以是不是有效版本号的任何字符串。
#5楼
您不需要第三方软件包即可获取此信息。 pypi为以下所有包提供了简单的JSON feed
https://pypi.python.org/pypi/{PKG_NAME}/json
以下是一些仅使用获取所有版本的标准库的Python代码。
import json
import urllib2
from distutils.version import StrictVersion
def versions(package_name):
url = "https://pypi.python.org/pypi/%s/json" % (package_name,)
data = json.load(urllib2.urlopen(urllib2.Request(url)))
versions = data["releases"].keys()
versions.sort(key=StrictVersion)
return versions
print "\n".join(versions("scikit-image"))
该代码打印出来(截至2015年2月23日):
0.7.2
0.8.0
0.8.1
0.8.2
0.9.0
0.9.1
0.9.2
0.9.3
0.10.0
0.10.1
来源:oschina
链接:https://my.oschina.net/u/3797416/blog/3167043