¿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. API para obtener el número total de Me gusta de una página de Facebook
- 6. Raspado y análisis de una página de Wikipedia
- 7. Limite el número de revisiones en Couchdb
- 8. Devolución de todas las imágenes en una página de Wikipedia
- 9. Cómo obtener el número de la página de marcador
- 10. ¿Cómo funciona el "enlace de Wikipedia" de Wikipedia?
- 11. Obtener número de móvil de facebook api
- 12. ¿Cómo obtener los datos de Infobox de Wikipedia?
- 13. API para obtener revisiones de android google play (Obtener nombre de dispositivo y versión de aplicación)
- 14. ¿Cómo se configura el número de compilación basado en el número de revisiones Subversion con CruiseControl.net
- 15. ¿Cómo obtener Infobox de un artículo de Wikipedia de Mediawiki API?
- 16. Wikipedia página-a-página de enlaces por PageID
- 17. Google Places API - Envío de revisiones
- 18. Wikipedia API: cómo buscar un término en una categoría específica
- 19. ¿Cómo usar la API de wikipedia si existe?
- 20. Wikipedia API - Acceso al objeto JSON
- 21. ¿Cómo minimizo el número de cambios entre las revisiones con una nueva salida de doxygen?
- 22. Extraer párrafos de API Wikipedia usando PHP cURL
- 23. Cómo se muestra el historial de revisiones como Revisiones
- 24. php obtener el número de una cadena
- 25. Obtener foto de perfil de una página
- 26. Zend_Db: ¿Cómo obtener el número de filas de una tabla?
- 27. ¿Cómo puedo obtener solo el Infobox analizado de un artículo de wikipedia?
- 28. ¿Cómo obtener el número de filas de un GridView?
- 29. ¿Cómo obtener el número de serie de los discos duros?
- 30. ¿Cómo puedo obtener el último número de conjunto de cambios a través de la API TFS
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