Jump to content

API:Pageprops

From mediawiki.org
This page is a translated version of the page API:Pageprops and the translation is 92% complete.
Версия MediaWiki:
1.17

Запрос GET для получения различных свойств, определённые в содержимом страницы.

Документация по API

prop=pageprops (pp)

(main | query | pageprops)

Get various page properties defined in the page content.

Specific parameters:
Other general parameters are available.
ppcontinue

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

ppprop

Only list these page properties (action=query&list=pagepropnames returns page property names in use). Useful for checking whether pages use a certain page property.

Separate values with | or alternative.
Maximum number of values is 50 (500 for clients that are allowed higher limits).
Example:
Get properties for the pages MediaWiki and MediaWiki.
api.php?action=query&prop=pageprops&titles=MediaWiki|MediaWiki [open in sandbox]


Пример

GET-запрос

Получает различные свойства, определённые в содержимом страницы.

Ответ

{
    "batchcomplete": "",
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "pageprops": {
                    "defaultsort": "Einstein, Albert",
                    "page_image_free": "Einstein_1921_by_F_Schmutzer_-_restoration.jpg",
                    "wikibase-badge-Q17437798": "1",
                    "wikibase_item": "Q937"
                }
            }
        }
    }

Пример кода

Python

#!/usr/bin/python3

"""
    pageprops.py
    MediaWiki API Demos
    Demo of `Pageprops` module: Get various properties defined in the page content
    MIT License
"""

import requests

S = requests.Session()

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

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

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

print(DATA)

PHP

<?php

/*
    pageprops.php
    MediaWiki API Demos
    Demo of `Pageprops` module: Get various properties defined in the page content
    MIT License
*/

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

/*
    pageprops.js
    MediaWiki API Demos
    Demo of `Pageprops` module: Get various properties defined in the page content
    MIT License
*/

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

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

/*
	pageprops.js
	MediaWiki API Demos
	Demo of `Pageprops` module: Get various properties defined in the page content
	MIT License
*/

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

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

Смотрите также

  • API:pageswithprop – перечисляет все страницы, использующие данное свойство.
  • API:Pagepropnames – перечисляет все названия используемых на вики свойств страниц.
  • API:Свойства get general properties of pages (not necessarily defined in the page content).