API:Langlinks

From mediawiki.org
This page is a translated version of the page API:Langlinks and the translation is 90% complete.
MediaWiki バージョン:
1.11

GET request to get a list of all language links from the provided pages to other languages.

APIの説明文書


(main | query | langlinks)

Returns all interlanguage links from the given pages.

Specific parameters:
Other general parameters are available.
llprop

Which additional properties to get for each interlanguage link:

url
Adds the full URL.
langname
Adds the localised language name (best effort). Use llinlanguagecode to control the language.
autonym
Adds the native language name.
Values (separate with | or alternative): autonym, langname, url
lllang

Only return language links with this language code.

lltitle

Link to search for. Must be used with lllang.

lldir

The direction in which to list.

One of the following values: ascending, descending
Default: ascending
llinlanguagecode

Language code for localised language names.

Default: en
lllimit

How many langlinks to return.

Type: integer or max
The value must be between 1 and 500.
Default: 10
llcontinue

When more results are available, use this to continue. More detailed information on how to continue queries can be found on mediawiki.org.

llurl
Deprecated.

Whether to get the full URL (cannot be used with llprop).

Type: boolean (details)

GET リクエスト

指定したページにある言語リンクのリストを取得します。


レスポンス

{
    "continue": {
        "llcontinue": "736|ay",
        "continue": "||"
    },
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "langlinks": [
                    {
                        "lang": "ab",
                        "*": "\u0410\u043b\u0431\u0435\u0440\u0442 \u0415\u0438\u043d\u0448\u0442\u0435\u0438\u043d"
                    },
                    {
                        "lang": "af",
                        "*": "Albert Einstein"
                    },
                    {
                        "lang": "als",
                        "*": "Albert Einstein"
                    },
                    ...
                ]
            }
        }
    }
}

サンプル コード

Python

#!/usr/bin/python3

"""
    langlinks.py
    MediaWiki API Demos
    Demo of `Langlinks` module: Get a list of language links that a given page has
    MIT License
"""

import requests

S = requests.Session()

URL = "https://en.wikipedia.org/w/api.php"

PARAMS = {
    "action": "query",
    "titles": "Albert Einstein",
    "prop": "langlinks",
    "format": "json"
}

R = S.get(url=URL, params=PARAMS)
DATA = R.json()

print(DATA)

PHP

<?php

/*
    langlinks.php
    MediaWiki API Demos
    Demo of `Langlinks` module: Get a list of language links that a given page has
    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "titles" => "Albert Einstein",
    "prop" => "langlinks",
    "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

/*
    langlinks.js
    MediaWiki API Demos
    Demo of `Langlinks` module: Get a list of language links that a given page has
    MIT License
*/

var url = "https://en.wikipedia.org/w/api.php"; 

var params = {
    action: "query",
    titles: "Albert Einstein",
    prop: "langlinks",
    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

/*
	langlinks.js
	MediaWiki API Demos
	Demo of `Langlinks` module: Get a list of language links that a given page has
	MIT License
*/

var params = {
		action: 'query',
		titles: 'Albert Einstein',
		prop: 'langlinks',
		format: 'json'
	},
	api = new mw.Api();

api.get( params ).done( function ( data ) {
	console.log( data );
} );

起こりうるエラー

Code Info
invalidparammix titleパラメータはlangといっしょに使用しなければなりません。

パラメーターの履歴

  • v1.23: llprop, url, langname, autonym, llinlanguagecode を導入しました
  • v1.23: llurl を廃止予定にしました
  • v1.19: lldir を導入しました
  • v1.18: lllang, lltitle を導入しました
  • v1.17: llurl を導入しました
  • v1.13: lllimit, llcontinue を導入しました

関連項目

  • API:リンク - Returns all links from the given pages.
  • API:Langbacklinks - 指定したページにリンクしているページをすべて検索します。