what una qué programming interfaces application apis sql web-services nlp wikipedia wikipedia-api

sql - qué - ¿Cómo obtener todas las páginas de artículos en una categoría de Wikipedia y sus subcategorías?



web application programming interfaces (3)

El siguiente recurso le ayudará a descargar todas las páginas de la categoría y todas sus subcategorías:

http://en.wikipedia.org/wiki/Wikipedia:CatScan

También hay una API disponible aquí:

https://www.mediawiki.org/wiki/API:Categorymembers

Quiero obtener todos los nombres de los artículos en una categoría y sus subcategorías.

Opciones que conozco:

  1. Usando la API de Wikipedia. ¿Tiene tal opción?
  2. d / l el basurero. ¿Qué formato sería mejor para mi uso?
  3. También hay una opción para buscar en Wikipedia algo como incategory:"music" , pero no vi una opción para ver eso en XML.

Por favor comparte tus pensamientos


Puedes hacerlo a través de los siguientes dos métodos API:

Para páginas de artículos para esta categoría.

YOUR_URL/api.php?action=query&format=json&list=categorymembers&cmtitle=Category:Music

Para obtener subcategorías:

YOUR_URL/api.php?action=query&format=json&list=categorymembers&cmtype=subcat&cmtitle=Category:Music

Puedes obtener más información sobre la API de Mediawiki


Tenga en cuenta que el sistema de categorización de Wikipedia no es un árbol, ni siquiera un gráfico acíclico. Es muy posible que al seguir continuamente los enlaces de subcategorías, eventualmente terminará donde comenzó.

Si va a realizar muchas de estas consultas, será mejor que lo atienda si descarga un volcado de base de datos. Si esto va a ser algo poco frecuente y solo se tratará de categorías pequeñas, es probable que se salga con la suya haciendo consultas repetidas a list=categorymembers .

incategory:"music" no parece hacer una búsqueda de subcategorías.