Ubuntu 软件包发布和更新日期

Ubuntu 软件包发布和更新日期

我正在创建 Ubuntu 16.04 系统中安装的软件包列表,并且需要每个软件包的发布日期(如果更新,我还需要更新的发布日期)

然而我找不到这些信息 这里这里

我可以在哪里获得这些信息?

答案1

此信息由launchpad.net

您可以编写一个脚本来在该网站上搜索软件包,并解析生成的网页(屏幕抓取样式)以获取发布日期。例如,如果您正在寻找软件包logrotate,则页面将是https://launchpad.net/ubuntu/+source/logrotate,并且发布日期在以 Xenial Xerus 开头的行上。

更优雅的解决方案是使用 API。这一页描述了您可以使用 API 执行的所有操作。我自己没有用过它,但它似乎可以让您从数据库中查询任何对象。

编辑

我玩了一下 API。以下 Python 代码给出了发行版系列软件包的发布日期/logrotate时间xenial

from launchpadlib.launchpad import Launchpad

launchpad = Launchpad.login_with('hello-world', 'production')
ubuntu = launchpad.distributions["ubuntu"]
archive = ubuntu.main_archive
series = ubuntu.current_series
print archive.getPublishedSources(exact_match=True, source_name="logrotate",
       distro_series=ubuntu.getSeries(name_or_version="xenial"))[0].date_published

为了使此功能正常工作,您需要安装该软件包python-launchpadlib。您还需要有一个 Ubuntu One 帐户,用于登录 Launchpad。首次运行时,该程序将打开浏览器,让您授予该程序访问 Launchpad 的权限。

相关内容