def get_pypi_info(pkg_name):
"""get version information from pypi. If <pkg_name> is not found seach
pypi. if <pkg_name> matches search results case; use the new value of
pkg_name"""
client = xmlrpclib.ServerProxy('https://pypi.python.org/pypi')
ver_list = client.package_releases(pkg_name)
if len(ver_list) == 0:
search_list = client.search({'name': pkg_name})
for info in search_list:
if pkg_name.lower() == info['name'].lower():
pkg_name = info['name']
break
ver_list = client.package_releases(pkg_name)
if len(ver_list) == 0:
return pkg_name, 'not found', {}
version = ver_list[0]
xml_info = client.release_data(pkg_name, version)
return pkg_name, version, xml_info
评论列表
文章目录