Pregunta

Nuevo en el foro Ciencia de datos, y el primer cartel aquí!

Esto puede ser una especie de pregunta específica (esperemos que no demasiado), pero me imagino que otros podrían estar interesados.

Estoy buscando una manera de consulta básicamente GitHub con algo como esto:

Give me a collection of all of the public repositories that have more than 10 stars, at
least two forks, and more than three committers.

El resultado podría tomar cualquier forma viable:. Un volcado de datos JSON, un enlace a la página web, etc. más que probable que consistirá en la información de 10.000 repos o algo grande

¿Es este tipo de cosas es posible mediante la API o de alguna otra manera pre-construidos, o voy a tener que construir mi propia solución personalizada donde intento para raspar todas las páginas? Si es así, qué tan factible es esto y cómo podría yo abordarlo?

¿Fue útil?

Solución

Mi comprensión limitada, basado en breve navegación GitHub API documentación, es que actualmente no hay un solicitud de API única que los apoyos todos su enumeran criterios a la vez . Sin embargo, creo que se puede utilizar la siguiente secuencia con el fin de lograr el objetivo de su ejemplo (al menos, me gustaría utilizar este enfoque):

1) Solicitud información sobre todos los repositorios públicos (API devuelve representaciones de resumen solamente): https://developer.github.com/v3/repos/#list-all-public-repositories ;

2) a través de la lista de todos los repositorios públicos recuperados en el paso 1, solicitar recursos individuales, y guardarlo como () Lista Loop nueva detallado (esto devuelve representaciones detalladas en otras palabras, todos los atributos): https://developer.github.com/v3/repos / # get ;

3) Loop a través de la lista detallada de todos los repositorios, filtrando campos correspondientes por sus criterios. Para su solicitud ejemplo, que estaría interesado en los siguientes atributos de la principal objeto: stargazers_count , forks_count . Con el fin de filtrar los repositorios por número de committers, se puede utilizar un API independiente: https: //developer.github.com/v3/repos/#list-contributors .

Las actualizaciones o comentarios de personas más familiarizadas con GitHub API son bienvenidos!

Licenciado bajo: CC-BY-SA con atribución
scroll top