API:Opensearch
Outdated translations are marked like this.
This page is part of the MediaWiki Action API documentation. |
GET request เพื่อค้นหาวิกิและรับผลลัพธ์ใน รูปแบบ OpenSearch
API documentation
ตัวอย่าง
GET request
Response
[
"Hampi",
[
"Hampi",
"Hampi (town)",
"Hampi Express",
...
],
[
"Hampi, also referred to as the Group of Monuments at Hampi, is a UNESCO World Heritage Site located in east-central Karnataka, India.",
"Hampi is a town in Hospet taluk of the Ballari district in the Indian state of Karnataka. Located along the Tungabhadra River in the east and center part of the state, near the border of Andhra Pradesh, Hampi is near the city of Hosapete.",
"The Hampi Express is a daily express train running between the Mysooru and Hubballi Junction, the headquarters of the South Western Railway in India.",
...
],
[
"https://en.wikipedia.org/wiki/Hampi",
"https://en.wikipedia.org/wiki/Hampi_(town)",
"https://en.wikipedia.org/wiki/Hampi_Express",
...
]
]
คำอธิบายวิกิของวิกิมีเดีย ถูกปิดใช้งานเนื่องจากเหตุผลด้านประสิทธิภาพ ดังนั้นอาร์เรย์ที่สองจึงมีเพียงสตริงว่างเท่านั้น ดูที่ T241437
รหัสตัวอย่าง
Python
#!/usr/bin/python3
"""
opensearch.py
MediaWiki API Demos
Demo of `Opensearch` module: Search the wiki and obtain
results in an OpenSearch (http://www.opensearch.org) format
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "opensearch",
"namespace": "0",
"search": "Hampi",
"limit": "5",
"format": "json"
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
print(DATA)
PHP
<?php
/*
opensearch.php
MediaWiki API Demos
Demo of `Opensearch` module: Search the wiki and obtain
results in an OpenSearch (http://www.opensearch.org) format
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "opensearch",
"search" => "Hampi",
"limit" => "5",
"namespace" => "0",
"format" => "json"
];
$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 );
var_dump( $result );
JavaScript
/*
opensearch.js
MediaWiki API Demos
Demo of `Opensearch` module: Search the wiki and obtain
results in an OpenSearch (http://www.opensearch.org) format
MIT License
*/
var url = "https://en.wikipedia.org/w/api.php";
var params = {
action: "opensearch",
search: "Hampi",
limit: "5",
namespace: "0",
format: "json"
};
url = url + "?origin=*";
Object.keys(params).forEach(function(key){url += "&" + key + "=" + params[key];});
fetch(url)
.then(function(response){return response.json();})
.then(function(response) {console.log(response);})
.catch(function(error){console.log(error);});
MediaWiki JS
/*
opensearch.js
MediaWiki API Demos
Demo of `Opensearch` module: Search the wiki and obtain
results in an OpenSearch (http://www.opensearch.org) format
MIT License
*/
var params = {
action: 'opensearch',
search: 'Hampi',
limit: '5',
namespace: '0',
format: 'json'
},
api = new mw.Api();
api.get( params ).done( function ( data ) {
console.log( data );
} );
ข้อบกพร่อง (error) ที่อาจเกิด
รหัส (Code) | ข้อมูล (Info) |
---|---|
nosearch | The search parameter must be set. |
unknown_format | Unrecognized value for parameter format: aaa. |
บันทึกเพิ่มเติม
ที่เกี่ยวข้องกับ API นี้ พอยน์เตอร์เพิ่มเติมเล็กน้อยสำหรับ MediaWiki ผู้ดูแลไซต์ และ นักพัฒนาส่วนขยาย:
- Extension:TitleKey - อนุญาตให้คำแนะนำการค้นหาจาก API นี้คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
- Extension:TextExtracts และ
$wgExtractsExtendOpenSearchXml
ที่กำหนดค่าเป็นจริงในLocalSettings.php
จะอนุญาตให้แต่ละรายการในรูปแบบ XML รวมแท็ก<Description>
พร้อมข้อความที่แยกจากบทความ
- Extension:PageImages และ
$wgPageImagesExpandOpenSearchXml
ที่กำหนดค่าเป็นจริงในLocalSettings.php
จะอนุญาตให้แต่ละรายการในรูปแบบ XML รวมแท็ก<Image>
พร้อมภาพขนาดย่อจากบทความ