API:Random/es
![]() | Esta página es parte de la documentación de la API de acciones de MediaWiki. |
Versión de MediaWiki: | ≥ 1.12 |
Obtener una lista de páginas aleatorias.
Este módulo puede ser utilizado como generador .
API Documentación
![]() | La siguiente documentación es la producción de $especial, generado automáticamente por la pre-versión de liberación de MediaWiki que se ejecuta en este sitio (MediaWiki.org). |
list=random (rn)
- This module requires read rights.
- This module can be used as a generator.
- Source: MediaWiki
- License: GPL-2.0-or-later
Get a set of random pages.
Pages are listed in a fixed sequence, only the starting point is random. This means that if, for example, Main Page is the first random page in the list, List of fictional monkeys will always be second, List of people on stamps of Vanuatu third, etc.
- rnnamespace
Return pages in these namespaces only.
- Values (separate with | or alternative): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 90, 91, 92, 93, 100, 101, 102, 103, 104, 105, 106, 107, 710, 711, 828, 829, 1198, 1199, 2600, 5500, 5501
- To specify all values, use *.
- rnfilterredir
How to filter for redirects.
- One of the following values: all, nonredirects, redirects
- Default: nonredirects
- rnminsize
Limit to pages with at least this many bytes.
- Type: integer
- rnmaxsize
Limit to pages with at most this many bytes.
- Type: integer
- rncontentmodel
Filter pages that have the specified content model.
- One of the following values: GadgetDefinition, JsonSchema, MassMessageListContent, NewsletterContent, Scribunto, SecurePoll, css, flow-board, javascript, json, sanitized-css, text, translate-messagebundle, unknown, wikitext
- rnredirect
- Deprecated.
Use rnfilterredir=redirects instead.
- Type: boolean (details)
- rnlimit
Limit how many random pages will be returned.
- Type: integer or max
- The value must be between 1 and 500.
- Default: 1
- rncontinue
When more results are available, use this to continue. More detailed information on how to continue queries can be found on mediawiki.org.
- Return two random pages from the main namespace.
- api.php?action=query&list=random&rnnamespace=0&rnlimit=2 [open in sandbox]
- Return page info about two random pages from the main namespace.
- api.php?action=query&generator=random&grnnamespace=0&grnlimit=2&prop=info [open in sandbox]
- Return page info about one random page from the main namespace that has at least 500 bytes of text.
- api.php?action=query&list=random&rnnamespace=0&rnlimit=1&minsize=500 [open in sandbox]
Ejemplo
CONSIGUE petición
Respuesta
{
"batchcomplete": "",
"continue": {
"rncontinue": "0.559881820010|0.559881954661|47659388|0",
"continue": "-||"
},
"query": {
"random": [
{
"id": 32381675,
"ns": 0,
"title": "Mallabhum Institute of Technology"
},
{
"id": 25126452,
"ns": 3,
"title": "User talk:96.232.132.176"
},
{
"id": 1440028,
"ns": 0,
"title": "Hyundai Epsilon engine"
},
{
"id": 35446805,
"ns": 15,
"title": "Category talk:Ukrainian card games"
},
{
"id": 12613,
"ns": 0,
"title": "Grue"
}
]
}
}
Código de muestra
Python
#!/usr/bin/python3
"""
get_random.py
MediaWiki API Demos
Demo of `Random` module: Get request to list 5 random pages.
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "query",
"format": "json",
"list": "random",
"rnlimit": "5"
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
RANDOMS = DATA["query"]["random"]
for r in RANDOMS:
print(r["title"])
PHP
<?php
/*
get_random.php
MediaWiki API Demos
Demo of `Random` module: Get request to list 5 random pages.
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "query",
"format" => "json",
"list" => "random",
"rnlimit" => "5"
];
$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"]["random"] as $k => $v ) {
echo( $v["title"] . "\n" );
}
JavaScript
/*
get_random.js
MediaWiki API Demos
Demo of `Random` module: Get request to list 5 random pages.
MIT License
*/
var url = "https://en.wikipedia.org/w/api.php";
var params = {
action: "query",
format: "json",
list: "random",
rnlimit: "5"
};
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 randoms = response.query.random;
for (var r in randoms) {
console.log(randoms[r].title);
}
})
.catch(function(error){console.log(error);});
MediaWiki JS
/*
get_random.js
MediaWiki API Demos
Demo of `Random` module: Get request to list 5 random pages.
MIT License
*/
var params = {
action: 'query',
format: 'json',
list: 'random',
rnlimit: '5'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
var randoms = data.query.random,
r;
for ( r in randoms ) {
console.log( randoms[ r ].title );
}
} );
Historia de parámetro
- v1.26: El límite anterior de 10/20 en
rnlimit
fué aumentado a los límites estándar de 500/5000. - v1.26:
rnredirect
obsoleto - v1.26:
rnfilterredir
Introducido - v1.14: Introducido
rnredirect
Notas adicionales
- A diferencia de la mayoría de los módulos en
Action API , el número predeterminado de páginas devueltas es 1, no 10.
- Las páginas son devueltas en una secuencia fija; sólo el punto de partida es aleatorio.
- El comportamiento predeterminado es elegir páginas de todo el wiki, incluyendo las páginas de discusión, las páginas de usuario, etc. Si estás buscando funcionalidad similar a Special:Random, es decir, elegir artículos aleatorios, restringe
rnnamespace
a0
. - Si el número de páginas es menor que
rnlimit
, la petición simplemente devolvera todas las páginas disponibles. No repetirá páginas para rellenar la respuesta hasta el límite.
Véase también
- Manual:Random page - Describe cómo configurar el API en el backend.