API:Allrevisions
Appearance
| Cette page fait partie de la documentation de l'API MediaWiki Action. |
| Version de MediaWiki : | ≥ 1.27 |
Requête GET qui fournit toutes les révisions supprimées par un utilisateur ou dans un espace de noms donné.
Documentation de l'API
Exemple
Requête GET
Récupère une liste de toutes les révisions de l'utilisateur Place holder sur la Wikipédia en anglais.
api.php? action=query& list=allrevisions& arvuser=Place%20holder& arvprop=ids|flags|timestamp [Essayez !]
Réponse
{
"batchcomplete": "",
"query": {
"allrevisions": [
{
"pageid": 36757881,
"revisions": [
{
"revid": 679803046,
"parentid": 656413943,
"timestamp": "2015-09-06T21:35:42Z"
},
{
"revid": 159361827,
"parentid": 0,
"timestamp": "2007-09-21T10:35:22Z"
}
],
"ns": 3,
"title": "User talk:Place holder"
}
...
]
}
}
Exemple de code
Python
#This file is auto-generated. See modules.json and autogenerator.py for details
#!/usr/bin/python3
"""
get_allrevisions.py
MediaWiki API Demos
Demo of `Allrevisions` module: get revision data of multiple pages and users
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "query",
"arvprop": "ids|flags|timestamp",
"arvuser": "Place holder",
"list": "allrevisions",
"format": "json"
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
ALLREVISIONS = DATA["query"]["allrevisions"]
for rev in ALLREVISIONS:
print(rev)
PHP
<?php
//This file is autogenerated. See modules.json and autogenerator.py for details
/*
get_allrevisions.php
MediaWiki API Demos
Demo of `Allrevisions` module: get revision data of multiple pages and users
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "query",
"format" => "json",
"list" => "allrevisions",
"arvprop" => "ids|flags|timestamp",
"arvuser" => "Place holder"
];
$url = $endPoint . "?" . http_build_query( $params );
$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$output = curl_exec( $ch );
curl_close( $ch );
$result = json_decode( $output, true );
foreach( $result["query"]["allrevisions"] as $k => $v ) {
foreach( $v["revisions"] as $k => $v ) {
var_dump( $v );
}
}
JavaScript
//This file is autogenerated. See modules.json and autogenerator.py for details
/*
get_allrevisions.js
MediaWiki API Demos
Demo of `Allrevisions` module: get revision data of multiple pages and users
MIT License
*/
var url = "https://en.wikipedia.org/w/api.php";
var params = {
action: "query",
format: "json",
list: "allrevisions",
arvprop: "ids|flags|timestamp",
arvuser: "Place holder"
};
url = url + "?origin=*";
Object.keys(params).forEach(function(key){url += "&" + key + "=" + params[key];});
fetch(url)
.then(function(response){return response.json();})
.then(function(response) {
var revs = response.query.allrevisions;
for (var r in revs) {
console.log(revs[r]);
}
})
.catch(function(error){console.log(error);});
MediaWiki JS
// This file is autogenerated. See modules.json and autogenerator.py for details
/*
get_allrevisions.js
MediaWiki API Demos
Demo of `Allrevisions` module: get revision data of multiple pages and users
MIT License
*/
var params = {
action: 'query',
format: 'json',
list: 'allrevisions',
arvprop: 'ids|flags|timestamp',
arvuser: 'Place holder'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
var revs = data.query.allrevisions,
r;
for ( r in revs ) {
console.log( revs[ r ] );
}
} );
Avertissements possibles
- Impossible de faire un diff avec r###### : le contenu est masqué.
- Utilisé quand la révision a été masquée (par exemple, en utilisant RevisionDelete ou Oversight).
- prop=parsetree n’est pris en charge que pour du contenu en wikicode. title utilise le modèle de contenu content model.
- Utilisé quand la propriété
parsetreeou le paramètregeneratexmlest utilisé et le modèle de contenu (tel qu’il est rendu par la propriétécontent) n’est pas initialisé surwikitext
- Utilisé quand la propriété
- Le développement des modèles n’est pris en charge que pour du contenu en wikicode. title utilise le modèle de contenu content model.
- Utilisé quand le paramètre
expandtemplatesest utilisé et le modèle de contenu (tel qu’il est rendu par la propriétécontent) n’est pas initialisé àwikitext
- Utilisé quand le paramètre
- Le format demandé contentFormat n’est pas pris en charge pour le modèle de contenu model utilisé par name.
- Utilisé quand le contenu soit de la version actuelle ou d'une version utilisée pour le diff n'est pas prise en charge (typiquement parce que ce n'est pas du texte).
Erreurs possibles
| Code | Info |
|---|---|
| arvdiffto | arvdiffto doit être fixé à un nombre positif ou nul, prev, next ou cur. |
| arvnosuchrevid | Il n’y a pas de révision d’ID ID. |
| arvnosuchsection | Il ’y a pas de section section dans ID. |
Historique des paramètres
- v1.26:
arvgeneratexmlobsolète - v1.27:
arvdifftotextpstajouté - v1.30:
parsetree,arvparse,arvexpandtemplates,arvdiffto,arvdifftotext,arvdifftotextpstobsolète
Voir aussi
- API:Revisions – Obtient des informations sur les révisions d'une ou plusieurs pages.
- API:Revisiondelete – Supprime et restaure des révisions.