واجهة برمجة التطبيقات:Allpages
هذه الصفحة جزء من توثيق واجهة برمجة تطبيقات ميدياويكي التي تحمل اسم Action. |
إصدار ميدياويكي: | ≥ 1.8 |
طلب GET الغرض منه سرد كافة الصفحات التي تنطبق عليها معايير محددة، داخل Namespace معين.
يمكن استخدام هذه الوحدة البرمجية بصفة مولّد .
توثيق واجهة برمجة التطبيقات
list=allpages (ap)
Enumerate all pages sequentially in a given namespace. Specific parameters: Other general parameters are available.
Examples:
|
مثال
طلب GET
الحصول على كافة الصفحات التي يحتوي عنوانها على النص «Jungle»، سواء كانت الكلمة كاملة أو جزء من عبارة.
النتيجة
{
"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"
}
...
]
}
}
عينة من الكود البرمجي
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 );
}
} );
الأخطاء المحتملة
الكود | معلومات |
---|---|
invalidparammix | يمكن استخدام الوسيط prlevel مع prtype فقط. |
انظر أيضا
- Chris G's botclasses/AllPagesBot.php — بوت يتولى استرداد كافة الملفات على موقع ويكي، يستعين بواجهة برمجة التطبيقات هذه
- واجهة برمجة التطبيقات:Categorymembers — يسرد كافة الصفحات داخل تصنيف محدد
- واجهة برمجة التطبيقات:التصنيفات — يسرد كافة التصنيفات المتعلقة بصفحة محددة، التي يمكنها أن تساعد في البحث عن صفحات مشابهة
- واجهة برمجة التطبيقات:Allcategories — يسرد كافة التصنيفات التي تنطبق عليها معايير معينة
- واجهة برمجة التطبيقات:Allimages — يسرد كافة الصور التي تنطبق على أسمائها معايير معينة
- واجهة برمجة التطبيقات:Allusers — يسرد كافة المستخدمين مرتبين ترتيبا أبجديا