API:标签

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page API:Tags and the translation is 100% complete.
Other languages:
English • ‎polski • ‎русский • ‎中文 • ‎日本語
MediaWiki版本: 1.16

GET请求列出有效的更改标签

API文档


list=tags (tg)

(main | query | tags)

List change tags.

Parameters:
tgcontinue

When more results are available, use this to continue.

tglimit

The maximum number of tags to list.

No more than 500 (5,000 for bots) allowed.
Type: integer or max
Default: 10
tgprop

Which properties to get:

displayname
Adds system message for the tag.
description
Adds description of the tag.
hitcount
Adds the number of revisions and log entries that have this tag.
defined
Indicate whether the tag is defined.
source
Gets the sources of the tag, which may include extension for extension-defined tags and manual for tags that may be applied manually by users.
active
Whether the tag is still being applied.
Values (separate with | or alternative): displayname, description, hitcount, defined, source, active
Default: (empty)

示例

GET请求

获取前三个更改标记及其命中数。

响应

{
  "batchcomplete": "",
  "continue": {
    "continue": "-||",
    "tgcontinue": "Extraneous formatting"
  },
  "query": {
    "tags": [
      {
        "hitcount": 2481517,
        "name": "AWB"
      },
      {
        "hitcount": 10849,
        "name": "Addition of interwiki link"
      },
      {
        "hitcount": 819,
        "name": "Citing predatory open access journal"
      }
    ]
  }
}

示例代码

Python

#!/usr/bin/python3

"""
    get_tags.py

    MediaWiki API Demos
    Demo of `Tags` module: Get the first three change tags and their hitcounts.

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "action": "query",
    "format": "json",
    "list": "tags",
    "tgprop": "hitcount",
    "tglimit": "3"
}

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

TAGS = DATA["query"]["tags"]

for t in TAGS:
    print(t["name"])

PHP

<?php
/*
    get_tags.php

    MediaWiki API Demos
    Demo of `Tags` module: Get the first three change tags and their hitcounts.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "format" => "json",
    "list" => "tags",
    "tgprop" => "hitcount",
    "tglimit" => "3"
];

$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"]["tags"] as $k => $v ) {
    echo( $v["name"] . "\n" );
}

JavaScript

/*
    get_tags.js

    MediaWiki API Demos
    Demo of `Tags` module: Get the first three change tags and their hitcounts.

    MIT License
*/

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

var params = {
    action: "query",
    format: "json",
    list: "tags",
    tgprop: "hitcount",
    tglimit: "3"
};

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 tags = response.query.tags;
        for (var t in tags) {
            console.log(tags[t].name);
        }
    })
    .catch(function(error){console.log(error);});

MediaWiki JS

/*
	get_tags.js

	MediaWiki API Demos
	Demo of `Tags` module: Get the first three change tags and their hitcounts.

	MIT License
*/

var params = {
		action: 'query',
		format: 'json',
		list: 'tags',
		tgprop: 'hitcount',
		tglimit: '3'
	},
	api = new mw.Api();

api.get( params ).done( function ( data ) {
	var tags = data.query.tags,
		t;
	for ( t in tags ) {
		console.log( tags[ t ].name );
	}
} );

附加提醒

参见