API:Allpages/diq
This page is part of the MediaWiki Action API documentation. |
MediaWiki version: | ≥ 1.8 |
GET request to list all pages fitting certain criteria, within a given Namespace .
This module can be used as a generator .
API documentation
Example
GET request
Get all pages whose title contains the text "Jungle", in whole or part.
Response
Items in the results are listed in alphabetical order, by page title.
{
"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"
}
...
]
}
}
Sample code
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 );
}
} );
Possible errors
Kod | Melumat |
---|---|
invalidparammix | The prlevel parameter may only be used with prtype. |
Bıvênên
- Chris G's botclasses/AllPagesBot.php — a bot that retrieves all files on a wiki, utilizing this API
- API:Categorymembers — lists all pages within a category
- API:Categories — lists all categories associated with a certain page, which can aid in finding similar pages
- API:Allcategories — lists all categories fitting a certain criteria
- API:Allimages — lists all images whose file names fit a certain criteria
- API:Allusers — lists all users in alphabetical order