mac python pip package-managers pypi

python - mac - Buscando PyPI por tema



python packages list (1)

Para cada paquete de Python puede especificar una lista de clasificadores . Entre otros, hay un clasificador de Topic , que coloca el paquete en las categorías especificadas que se pueden explorar en PyPI .

Por ejemplo, numpy tiene los siguientes temas:

Topic :: Software Development Topic :: Scientific/Engineering

¿Hay alguna manera de buscar por tema programáticamente utilizando pip search u otras bibliotecas de terceros?


Puede buscar PyPI por clasificador mediante la API XMLRPC , utilizando el método browse() :

try: import xmlrpclib # Python 2 except ImportError: import xmlrpc.client as xmlrpclib # Python 3 pypi = xmlrpclib.ServerProxy(''http://pypi.python.org/pypi'') packages = pypi.browse([ "Topic :: Software Development", "Topic :: Scientific/Engineering", ])

En el ejemplo anterior, los packages contienen una lista de listas [package, version] para todos los paquetes que satisfacen los clasificadores "Tema :: Desarrollo de software" y "Tema :: Científico / Ingeniería":

>>> {pkg: ver for pkg, ver in packages if "numpy" in pkg} { ''nose-numpyseterr'': ''0.1'', ''msgpack-numpy'': ''0.3.2'', ''numpy'': ''1.8.1'', ''idx2numpy'': ''1.0b'' }

A partir de ahí, puede obtener más información sobre una versión determinada:

>>> release = pypi.release_data(''numpy'', ''1.8.1'') >>> release[''download_url''] ''http://sourceforge.net/projects/numpy/files/NumPy/'' >>> release[''platform''] ''Windows,Linux,Solaris,Mac OS-X,Unix'' >>> release[''downloads''] { ''last_day'': 5818, ''last_month'': 187688, ''last_week'': 44764 }

... etc.