usando node for cómo crear aws node.js npm asp.net-web-api npmjs

node.js - node - Consulta el registro npmjs a través de api



mongodb node js api (7)

A menudo me siento insatisfecho con el orden y la expresividad de las búsquedas en https://www.npmjs.com/ . Supongo que debería haber una forma de consultar programáticamente el servidor usando https://api.npmjs.org/ o http://registry.npmjs.org/ . ¿Pero cómo? ¿Dónde está la documentación?

(¿O hay paquetes de nodos para facilitar eso? Sé que SO no se trata de recomendaciones de herramientas o paquetes, por lo que quizás no debería preguntar por esto también, pero si hubiera alguna herramienta, probablemente podría leer la API desde ese punto). también.)



Puede usar el módulo de nodo api-npm; consulta directamente el registro de NPM y puede obtener todos los atributos de un módulo y descargar las estadísticas de cualquier módulo de cualquier rango de tiempo https://www.npmjs.com/package/api-npm


Recientemente encontré un sitio de consulta npm realmente bueno https://npms.io . También tienen sistemas de puntos de calidad para cada paquete basados ​​en diversos datos.

También tendrán un sistema de puntuación para cada paquete con la información recopilada sobre el proyecto. La puntuación final se calcula en base a cuatro aspectos diferentes de Calidad, Mantenimiento, Popularidad y Personalidades.

API Doc: https://api-docs.npms.io


Si no puede encontrar un paquete o simplemente está pirateando un script de shell, los documentos de la API de registro en el repositorio git del registro incluyen información sobre la API de búsqueda y calificadores de búsqueda especiales.

Si está buscando el paquete inseguro más popular en la ejecución del registro público:

wget -qO - "http://registry.npmjs.com/-/v1/search?text=is:insecure&popularity=1.0&size=1"

Lo anterior usa el calificador de búsqueda is:insecure sin ningún criterio de texto adicional y obtiene resultados de size=1 donde popularity=1.0 (el más popular).

Consulte el directorio de docs en el repositorio para ver otras cosas útiles como:



https://skimdb.npmjs.com/registry/_all_docs

Este es un método actual para extraer todos los nombres de paquetes.

La búsqueda de URL es http://registry.npmjs.com/-/v1/search?text=<searchstring>&size=20


Por supuesto, hay al menos una herramienta diseñada para comunicarse con ese registro, y esa es la propia herramienta de línea de comandos npm . Su search de ejemplo comienza actualizando una copia local en caché del índice, filtrando eso. En update-index se puede leer que la URL que termina en /-/all es aparentemente especial. Y, de hecho, al agregar esto a registry.npmjs.org (deliberadamente no formateado como un enlace) se buscará un archivo 125M que podría ser demasiado para su navegador. Afortunadamente, la versión en caché se almacena disponible en ~/.npm/registry.npmjs.org/-/all/.cache.json . Desde allí se puede leer una lista de todos los paquetes desconocidos. Uno podría entonces continuar consultando cada paquete con más detalle.

El hecho de que la npm search aparentemente no usa un esquema más elaborado sugiere que no hay mucho de una API del lado del servidor aquí.

Buscando en la web páginas que mencionan api.npmjs.org , encontré que los recuentos de descargas se pueden recuperar desde allí. Todos los demás documentos que encontré hacen uso de esa única instalación.

Buscando alternativas, también me topé con npmsearch.com que ofrece algunas npmsearch.com búsqueda más versátiles y tiene una API algo documentada .