¿Alguien sabe cómo obtener el número de revisiones de una página de wikipedia utilizando mediawiki API? He leído esta documentación de la API, pero no puedo encontrar la API relacionada:
Revision APIAPI de Wikipedia: ¿cómo obtener el número de revisiones de una página?
7
A
Respuesta
7
La única posibilidad es la de recuperar todas las revisiones y contarlos. Es posible que necesite continue the query para eso.
Bug 17993 se trata de incluir un conteo, pero aún no se ha resuelto.
1
Recupere las revisiones e implemente un método para contarlas (es solo XML).
api.php ? action=query & prop=revisions & titles=API|Main%20Page & rvprop=timestamp|user|comment|content
.
<api>
<query>
<pages>
<page pageid="1191" ns="0" title="API">
<revisions>
<rev user="Harryboyles" timestamp="2006-10-31T05:39:01Z" comment="revert unexplained change: see talk ...">
...content...
</rev>
</revisions>
</page>
<page pageid="11105676" ns="0" title="Main Page">
<revisions>
<rev user="Ryan Postlethwaite" timestamp="2007-06-26T19:05:06Z" comment="rv - what was that for?">
...content...
</rev>
</revisions>
</page>
</pages>
1
Aquí es código para obtener el número de revisiones de una página (en este caso, el JSON wiki page):
import requests
BASE_URL = "http://en.wikipedia.org/w/api.php"
TITLE = 'JSON'
parameters = { 'action': 'query',
'format': 'json',
'continue': '',
'titles': TITLE,
'prop': 'revisions',
'rvprop': 'ids|userid',
'rvlimit': 'max'}
wp_call = requests.get(BASE_URL, params=parameters)
response = wp_call.json()
total_revisions = 0
while True:
wp_call = requests.get(BASE_URL, params=parameters)
response = wp_call.json()
for page_id in response['query']['pages']:
total_revisions += len(response['query']['pages'][page_id]['revisions'])
if 'continue' in response:
parameters['continue'] = response['continue']['continue']
parameters['rvcontinue'] = response['continue']['rvcontinue']
else:
break
print parameters['titles'], total_revisions
Puede comprobar el resultado aquí: https://en.wikipedia.org/w/index.php?title=JSON&action=info#Edit_history
(accesible desde la barra lateral de la página de wikipedia correspondiente: Herramientas - Información de la página)
Cuestiones relacionadas
- 1. ¿Cómo obtener la página de wikipedia en múltiples idiomas?
- 2. ¿Cómo obtener el contenido de Wikipedia usando la API de Wikipedia?
- 3. API de Wikipedia para geolocalizaciones
- 4. ¿El API de Wikipedia admite una plantilla específica?
- 5. Raspado y análisis de una página de Wikipedia
- 6. Limite el número de revisiones en Couchdb
- 7. Devolución de todas las imágenes en una página de Wikipedia
- 8. Cómo obtener el número de la página de marcador
- 9. ¿Cómo funciona el "enlace de Wikipedia" de Wikipedia?
- 10. ¿Cómo obtener los datos de Infobox de Wikipedia?
- 11. API para obtener revisiones de android google play (Obtener nombre de dispositivo y versión de aplicación)
- 12. Google Places API - Envío de revisiones
- 13. ¿Cómo obtener Infobox de un artículo de Wikipedia de Mediawiki API?
- 14. ¿Cómo se configura el número de compilación basado en el número de revisiones Subversion con CruiseControl.net
- 15. Wikipedia página-a-página de enlaces por PageID
- 16. Wikipedia API: cómo buscar un término en una categoría específica
- 17. ¿Cómo usar la API de wikipedia si existe?
- 18. Wikipedia API - Acceso al objeto JSON
- 19. Extraer párrafos de API Wikipedia usando PHP cURL
- 20. ¿Cómo minimizo el número de cambios entre las revisiones con una nueva salida de doxygen?
- 21. Cómo se muestra el historial de revisiones como Revisiones
- 22. php obtener el número de una cadena
- 23. Obtener foto de perfil de una página
- 24. Zend_Db: ¿Cómo obtener el número de filas de una tabla?
- 25. ¿Cómo puedo obtener solo el Infobox analizado de un artículo de wikipedia?
- 26. ¿Cómo obtener el número de filas de un GridView?
- 27. ¿Cómo obtener el número de serie de los discos duros?
- 28. ¿Cómo puedo obtener el último número de conjunto de cambios a través de la API TFS
- 29. Obtener número de página actual en InDesign CS5 de Javascript
- 30. ¿Cómo obtener revisiones/consejos gratuitos sobre el código imparcial?
Esta es una forma muy costosa de obtener el número de revisiones. Está solicitando una gran cantidad de datos (contenido de la página, resúmenes de edición) que está desechando. – Mark