- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否有一种简单的方法来获取所有通过 easy_install 安装的具有更新版本的 Python 库的报告?我不想简单地在已知已安装库的列表上重新运行 easy_install,因为较新的库可能具有非向后兼容的更改。我想要一份列表,以便快速查看更改内容,并检查新版本以审查任何可能存在冲突的更改。
最佳答案
这是一个快速脚本,用于扫描 easy-install.pth
文件并打印已安装软件包的较新版本列表。您可以自定义它以仅显示可用的最新版本(取 parsed_version
的最大值)、调整输出格式等:
#!/usr/bin/env python
import os, sys
from distutils import sysconfig
from pkg_resources import Requirement
from setuptools.package_index import PackageIndex
index = PackageIndex()
root = sysconfig.get_python_lib()
path = os.path.join(root, 'easy-install.pth')
if not os.path.exists(path):
sys.exit(1)
for line in open(path, 'rb'):
if line.startswith('import sys'):
continue
path = os.path.join(root, line.strip(), 'EGG-INFO', 'PKG-INFO')
if not os.path.exists(path):
continue
lines = [r.split(':', 1) for r in open(path, 'rb').readlines() if ':' in r]
info = dict((k.strip(), v.strip()) for k, v in lines)
print '%s %s updates..' % (info['Name'], info['Version'])
spec = Requirement.parse(info['Name'] + '>' + info['Version'])
index.find_packages(spec)
versions = set([
(d.parsed_version, d.version) for d in index[spec.key] if d in spec
])
if versions:
for _, version in sorted(versions):
print '\t', version
else:
print '\tnone'
用法:
% easy_install networkx==1.3
% easy_install gdata==2.0.5
% ./pkgreport
networkx 1.3 updates..
1.4rc1
1.4
gdata 2.0.5 updates..
2.0.6
2.0.7
2.0.8
2.0.9
2.0.14
关于Python Easy_Install 更新报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5195764/
这与 this 有关我刚才问的问题。 最终结果是我希望能够安装我的包“identity.model”和所有依赖项。像这样... $ easy_install -f http://eggs.sadpha
我刚刚将 python 升级到 3.4 版。但是,由于某种原因,默认情况下并未安装 pip。所以我尝试使用命令“sudo easy_install pip”安装 pip。但是当我输入命令时,它给了我一
对于 Python 3.2,推荐什么:easy_install-3.2 或 easy_install? 为什么有两个高管?有什么不同? 还有一个问题:distribute 还是 setuptools?
我用easy_install安装pip,用pip安装django、virtualenv和virtualenvwrapper。 几周后我刚刚回到它,django 似乎不再工作了,但更令人担忧的是我无法重
尝试easy_install时fabric (或 easy_install pycrypto ,它取决于结构),我在 Mac OS X 上遇到以下链接器错误: ld: illegal text-rel
我使用的是 Mac OS X。我通过在终端中输入 easy_install networkx 来安装 networkx。终端显示 networkx 的已完成处理依赖项。但是,当我将 import ne
任何有关导致以下错误的想法吗? 我将Linux centos与openssl-devel.i386 0.9.8e-12.el5_5.7结合使用 $ easy_install PyOpenSSL Sea
是否有一种简单的方法来获取所有通过 easy_install 安装的具有更新版本的 Python 库的报告?我不想简单地在已知已安装库的列表上重新运行 easy_install,因为较新的库可能具有非
作为前言,我目前正在运行 OSX 10.9.1 和 Python 2.7。 我想使用 easy_install 安装 Python 包(在本例中为 pip)。首先我尝试: easy_install p
我正在尝试安装 ReportLab ,但我没有可用于编译 rl_accel 库的 C 编译器。使用 setup.py,我会像这样添加一个额外的参数: python setup.py --rl_acce
当尝试安装包时,easy_install 要求我升级分发: The required version of distribute (>=0.6.35) is not available, and ca
我正在尝试使用 easy_install 安装以 egg 格式打包的 python 脚本。问题是 easy_install 将依赖项下载到/tmp。但是,我的 tmp 目录只有 4mb 的可用空间(我
所以我使用 stow 在服务器上安装了 Python 2.7.1 源代码 .我过去很粗心,在处理源代码安装时我试图保持井井有条。所以,输入 stow。现在我使用 wget 安装了 easy_insta
当我easy_install一些python模块时,警告如: : module references __file__ : module references __path__ : module MA
有时我需要猜测包名,是否有任何包搜索实用程序,例如 apt/yum/port/brew 中的搜索命令... 最佳答案 没有,但您可以在线搜索 PyPi ,这是 easy_install、pip 等人使
我的 mac 上有两个版本的 python: Apple 预装在 /usr/bin 来自 python.org 的 /Library/Frameworks/Python.framework/Versi
有没有办法配置 easy_install 以避免在安装失败时重新下载文件? 最佳答案 13 年后更新:easy_install 已于 2021 年 1 月从 Python 中移除。python 包管理
我想安装 sphinx,网站说要使用: easy_install -U Sphinx 安装此命令后会发生什么?我也会得到来源吗?它会安装在哪里? 最佳答案 在 Ubuntu 上,我相信它会安装到/us
我正在从旧的 Win2K 机器迁移到新的、功能更强大的 Vista 64 位 PC。大部分迁移进行得相当顺利 - 但我确实发现我需要重新安装所有与 Python 相关的工具。 我已经下载了 mecha
我尝试安装 SimpleCV 包: C:\>easy_install C:\Python27\lib\site-packages\simplecv-1.2-py2.7.egg Processing s
我是一名优秀的程序员,十分优秀!