API:Informação

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page API:Info and the translation is 75% complete.
Other languages:
English • ‎français • ‎polski • ‎português • ‎русский • ‎中文 • ‎日本語
MediaWiki version: 1.8

Pedido GET para exibir informação básica sobre a(s) página(s) fornecida(s).

Documentação da API


prop=info (in)

(main | query | info)

Get basic page information.

Parameters:
inprop

Which additional properties to get:

protection
List the protection level of each page.
talkid
The page ID of the talk page for each non-talk page.
watched
List the watched status of each page.
watchers
The number of watchers, if allowed.
visitingwatchers
The number of watchers of each page who have visited recent edits to that page, if allowed.
notificationtimestamp
The watchlist notification timestamp of each page.
subjectid
The page ID of the parent page for each talk page.
url
Gives a full URL, an edit URL, and the canonical URL for each page.
readable
Deprecated. Whether the user can read this page. Use intestactions=read instead.
preload
Gives the text returned by EditFormPreloadText.
displaytitle
Gives the manner in which the page title is actually displayed.
varianttitles
Gives the display title in all variants of the site content language.
Values (separate with | or alternative): displaytitle, notificationtimestamp, preload, protection, subjectid, talkid, url, varianttitles, visitingwatchers, watched, watchers, readable
intestactions

Test whether the current user can perform certain actions on the page.

Separate values with | or alternative.
Maximum number of values is 50 (500 for clients allowed higher limits).
intestactionsdetail

Detail level for intestactions. Use the main module's errorformat and errorlang parameters to control the format of the messages returned.

boolean
Return a boolean value for each action.
full
Return messages describing why the action is disallowed, or an empty array if it is allowed.
quick
Like full but skipping expensive checks.
One of the following values: boolean, full, quick
Default: boolean
intoken
Deprecated.

Use action=query&meta=tokens instead.

Values (separate with | or alternative): block, delete, edit, email, import, move, protect, unblock, watch
incontinue

When more results are available, use this to continue.

Examples:
Get information about the page Main Page.
api.php?action=query&prop=info&titles=Main%20Page [open in sandbox]
Get general and protection information about the page Main Page.
api.php?action=query&prop=info&inprop=protection&titles=Main%20Page [open in sandbox]

Exemplo

Pedido GET

Obter informação sobre a página de w:Albert Einstein, incluindo a id. da página de discussão , e os URLs associados com a página

Resposta

{
    "batchcomplete": "",
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "contentmodel": "wikitext",
                "pagelanguage": "en",
                "pagelanguagehtmlcode": "en",
                "pagelanguagedir": "ltr",
                "touched": "2018-12-13T11:58:27Z",
                "lastrevid": 873382746,
                "length": 154728,
                "talkid": 21091085,
                "fullurl": "https://en.wikipedia.org/wiki/Albert_Einstein",
                "editurl": "https://en.wikipedia.org/w/index.php?title=Albert_Einstein&action=edit",
                "canonicalurl": "https://en.wikipedia.org/wiki/Albert_Einstein"
            }
        }
    }
}

Código de amostra

Python

#!/usr/bin/python3

"""
    get_info.py

    MediaWiki API Demos
    Demo of `Info` module: Send a GET request to display information about a page.

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "action": "query",
    "format": "json",
    "titles": "Albert Einstein",
    "prop": "info",
    "inprop": "url|talkid"
}

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

PAGES = DATA["query"]["pages"]

for k, v in PAGES.items():
    print(v["title"] + " has " + str(v["length"]) + " bytes.")

PHP

<?php
/*
    get_info.php

    MediaWiki API Demos
    Demo of `Info` module: Send a GET request to display information about a page.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "format" => "json",
    "titles" => "Albert Einstein",
    "prop" => "info",
    "inprop" => "url|talkid"
];

$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"]["pages"] as $k => $v ) {
    echo( $v["title"] . " has " . $v["length"] . " bytes." . "\n" );
}

JavaScript

/*
    get_info.js

    MediaWiki API Demos
    Demo of `Info` module: Send a GET request to display information about a page.

    MIT License
*/

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

var params = {
    action: "query",
    format: "json",
    titles: "Albert Einstein",
    prop: "info",
    inprop: "url|talkid"
};

url = url + "?origin=*";
Object.keys(params).forEach(function(key){url += "&" + key + "=" + params[key];});

fetch(url)
    .then(function(response){return response.json();})
    .then(function(response) {
        var pages = response.query.pages;
        for (var p in pages) {
            console.log(pages[p].title + " has " + pages[p].length + " bytes.");
        }
    })
    .catch(function(error){console.log(error);});

MediaWiki JS

/*
	get_info.js

	MediaWiki API Demos
	Demo of `Info` module: Send a GET request to display information about a page.

	MIT License
*/

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

api.get( params ).done( function ( data ) {
	var pages = data.query.pages,
		p;
	for ( p in pages ) {
		console.log( pages[ p ].title + ' has ' + pages[ p ].length + ' bytes.' );
	}
} );

Histórico de parâmetros

  • v1.27: Introduzido visitingwatchers
  • v1.25: Introduzido intestactions
  • v1.24: Desaprovado intoken
  • v1.21: Introduzido watchers
  • v1.20: Introduzido notificationtimestamp
  • v1.17: Introduzido displaytitle
  • v1.16: Introduzido watched, preload
  • v1.14: Introduzido url, readable
  • v1.13: Introduzido talkid, subjectid
  • v1.11: Introduzido inprop, protection, intoken

Notas adicionais

Consulte também