我有一个使用Python制作的简单CLI。每次运行时,我都想检查它是否已更新为最新版本,如果不是,则打印一些信息。
我相信这段代码
import pkg_resources
installed_version = pkg_resources.get_distribution("videocloud").version
应该告诉我安装了哪个版本,但是我找不到找到最新版本的方法。
是否有某种API可以获取最新版本的PyPI模块?
答案 0 :(得分:0)
我使用999<
和beautifulsoup4
编写了此脚本-因此您需要互联网连接才能运行。
urllib
之所以可行,是因为pypi网站上的标题中包含版本,并且具有html标识符,可让您轻松找到标题。 EG:
样品运行:
import bs4 as bs
import urllib.request as request
repo = input('Please enter a repository name: ')
soup = bs.BeautifulSoup(request.urlopen(f'https://pypi.org/project/{repo}/'), 'lxml')
title = []
for item in soup.find_all('h1', {'class': 'package-header__name'}):
title.append(item.text)
version = title[0].split()[-1]
print(version)
也作为功能:
Please enter a repository name: pyaes
1.6.1