API:Allpages
Appearance
| Esta página es parte de la documentación de la API de acciones de MediaWiki. |
| Versión de MediaWiki: | ≥ 1.8 |
OBTENER solicitud para enumerar todas las páginas que se adecuen a ciertos criterios, dentro de un determinado Espacio de nombres.
Este módulo puede ser utilizado como generator.
API Documentación
Ejemplo
Solicitud GET
Conseguir todas las páginas cuyos títulos contengan el texto "Jungla", entero o en parte.
Respuesta
Los elementos en los resultados son listados en orden alfabético, por título de página.
{
"batchcomplete": "",
"continue": {
"apcontinue": "Jungle_(Bakufu_Slump_album)",
"continue": "-||"
},
"query": {
"allpages": [
{
"pageid": 341265,
"ns": 0,
"title": "Jungle"
},
{
"pageid": 56461312,
"ns": 0,
"title": "Jungle-runner"
},
{
"pageid": 18698572,
"ns": 0,
"title": "Jungle/Drum n bass"
},
{
"pageid": 1487899,
"ns": 0,
"title": "Jungle2jungle"
},
{
"pageid": 30391179,
"ns": 0,
"title": "JunglePup"
}
...
]
}
}
Código de ejemplo
Python
#!/usr/bin/python3
"""
get_allpages.py
MediaWiki API Demos
Demo of `Allpages` module: Get all pages whose title contains the text "Jungle," in whole or part.
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "query",
"format": "json",
"list": "allpages",
"apfrom": "jungle",
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
PAGES = DATA["query"]["allpages"]
for page in PAGES:
print(page["title"])
PHP
<?php
/*
get_allpages.php
MediaWiki API Demos
Demo of `Allpages` module: Get all pages whose title contains the text "Jungle," in whole or part.
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "query",
"format" => "json",
"list" => "allpages",
"apfrom" => "jungle"
];
$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"]["allpages"] as $k => $v ) {
echo( $v["title"] . "\n" );
}
JavaScript
/*
get_allpages.js
MediaWiki API Demos
Demo of `Allpages` module: Get all pages whose title contains the text "Jungle," in whole or part.
MIT License
*/
let url = "https://en.wikipedia.org/w/api.php";
const params = {
action: "query",
format: "json",
list: "allpages",
apfrom: "jungle"
}
url += "?origin=*"
Object.keys(params).forEach((key) => {
url += `&${key}=${params[key]}`
})
fetch(url)
.then((response) => {
return response.json()
})
.then((response) => {
const pages = response.query.allpages
for (let p in pages) {
console.log(pages[p].title)
}
})
.catch((error) => {
console.log(error)
})
MediaWiki JS
/*
get_allpages.js
MediaWiki API Demos
Demo of `Allpages` module: Get all pages whose title contains the text "Jungle," in whole or part.
MIT License
*/
var params = {
action: 'query',
format: 'json',
list: 'allpages',
apfrom: 'jungle'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
var pages = data.query.allpages,
p;
for ( p in pages ) {
console.log( pages[ p ].title );
}
} );
Errores posibles
| Código | Info |
|---|---|
| invalidparammix | El parámetro prlevel solo se puede utilizar junto con prtype. |
Véase también
- Chris G's botclasses/AllPagesBot.php – un bot que recupera todos los archivos en una wiki, utilizando esta API
- API:Categorymembers – Lista todas las páginas dentro de una categoría
- API:Categorías – enumera todas las categorías asociadas con una página determinada, lo que puede ayudar a encontrar páginas similares
- API:Allcategories – enumera todas las categorías que se ajustan a ciertos criterios
- API:Allimages – Lista todas las imágenes cuyos nombres de archivo se ajustan a ciertos criterios
- API:Allusers – Lista todos los usuarios por orden alfabético