واجهة برمجة التطبيقات:Usercontribs

This page is a translated version of the page API:Usercontribs and the translation is 100% complete.
إصدار ميدياويكي:
1.9

طلب GET الغرض منه سرد قائمة بمساهمات أحد المستخدمين.

توثيق واجهة برمجة التطبيقات


list=usercontribs (uc)

(main | query | usercontribs)

Get all edits by a user.

Parameters:
uclimit

The maximum number of contributions to return.

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

The start timestamp to return from, i.e. revisions before this timestamp.

Type: timestamp (allowed formats)
ucend

The end timestamp to return to, i.e. revisions after this timestamp.

Type: timestamp (allowed formats)
uccontinue

When more results are available, use this to continue.

ucuser

The users to retrieve contributions for. Cannot be used with ucuserids, ucuserprefix, or uciprange.

Type: list of users, by any of username, IP and interwiki name (e.g. "prefix>ExampleName")
Separate values with | or alternative.
Maximum number of values is 50 (500 for clients allowed higher limits).
ucuserids

The user IDs to retrieve contributions for. Cannot be used with ucuser, ucuserprefix, or uciprange.

Type: list of integers
Separate values with | or alternative.
Maximum number of values is 50 (500 for clients allowed higher limits).
ucuserprefix

Retrieve contributions for all users whose names begin with this value. Cannot be used with ucuser, ucuserids, or uciprange.

uciprange

The CIDR range to retrieve contributions for. Cannot be used with ucuser, ucuserprefix, or ucuserids.

ucdir

In which direction to enumerate:

newer
List oldest first. Note: ucstart has to be before ucend.
older
List newest first (default). Note: ucstart has to be later than ucend.
One of the following values: newer, older
Default: older
ucnamespace

Only list contributions in these namespaces.

Values (separate with | or alternative): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 90, 91, 92, 93, 100, 101, 102, 103, 104, 105, 106, 107, 486, 487, 710, 711, 828, 829, 1198, 1199, 2300, 2301, 2302, 2303, 2600, 5500, 5501
To specify all values, use *.
ucprop

Include additional pieces of information:

ids
Adds the page ID and revision ID.
title
Adds the title and namespace ID of the page.
timestamp
Adds the timestamp of the edit.
comment
Adds the comment of the edit. If the comment has been revision deleted, a commenthidden property will be returned.
parsedcomment
Adds the parsed comment of the edit. If the comment has been revision deleted, a commenthidden property will be returned.
size
Adds the new size of the edit.
sizediff
Adds the size delta of the edit against its parent.
flags
Adds flags of the edit.
patrolled
Tags patrolled edits.
tags
Lists tags for the edit.
Values (separate with | or alternative): comment, flags, ids, parsedcomment, patrolled, size, sizediff, tags, timestamp, title
Default: ids|title|timestamp|comment|size|flags
ucshow

Show only items that meet these criteria, e.g. non minor edits only: ucshow=!minor.

If ucshow=patrolled or ucshow=!patrolled is set, revisions older than $wgRCMaxAge (2592000 seconds) won't be shown.

Values (separate with | or alternative): !autopatrolled, !minor, !new, !patrolled, !top, autopatrolled, minor, new, patrolled, top
uctag

Only list revisions tagged with this tag.

uctoponly
Deprecated.

Only list changes which are the latest revision.

Type: boolean (details)
Examples:
Show contributions of user Example.
api.php?action=query&list=usercontribs&ucuser=Example [open in sandbox]
Show contributions from all IP addresses with prefix 192.0.2..
api.php?action=query&list=usercontribs&ucuserprefix=192.0.2. [open in sandbox]

مثال

طلب GET

سرد قائمة بمساهمات المستخدم User:Jimbo Wales


النتيجة

{
    "batchcomplete": "",
    "continue": {
        "uccontinue": "20190130180447|880978627",
        "continue": "-||"
    },
    "query": {
        "usercontribs": [
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9870625,
                "revid": 881893498,
                "parentid": 881892978,
                "ns": 3,
                "title": "User talk:Jimbo Wales",
                "timestamp": "2019-02-05T14:05:11Z",
                "comment": "/* Fancy I edit Wikipedia T-Shirt */",
                "size": 29753
            },
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9870625,
                "revid": 881282261,
                "parentid": 881270759,
                "ns": 3,
                "title": "User talk:Jimbo Wales",
                "timestamp": "2019-02-01T15:29:31Z",
                "comment": "/* Macedonian President Gorge Ivanov is now in the House arrest */",
                "size": 60166
            },
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9513191,
                "revid": 881245934,
                "parentid": 881240310,
                "ns": 1,
                "title": "Talk:Mark Dice",
                "timestamp": "2019-02-01T09:48:38Z",
                "comment": "/* So good they names it twice */",
                "size": 74128
            },
            ...
        ]
    }
}

عينة من الكود البرمجي

Python

#!/usr/bin/python3

"""
    get_usercontribs.py

    MediaWiki API Demos
    Demo of `Usercontribs` module: List user contributions.

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "action": "query",
    "format": "json",
    "list": "usercontribs",
    "ucuser": "Jimbo Wales"
}

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

USERCONTRIBS = DATA["query"]["usercontribs"]

for uc in USERCONTRIBS:
    print(uc["title"])

PHP

<?php

//This file is autogenerated. See modules.json and autogenerator.py for details

/*
    get_usercontribs.php

    MediaWiki API Demos
    Demo of `Usercontribs` module: List user contributions.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "format" => "json",
    "list" => "usercontribs",
    "ucuser" => "Jimbo Wales"
];

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

JavaScript

/*
    get_usercontribs.js

    MediaWiki API Demos
    Demo of `Usercontribs` module: List user contributions.

    MIT License
*/

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

var params = {
    action: "query",
    format: "json",
    list: "usercontribs",
    ucuser: "Jimbo Wales"
};

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 usercontrib = response.query.usercontribs;
        for (var uc in usercontrib) {
            console.log(usercontrib[uc].title);
        }
    })
    .catch(function(error){console.log(error);});

MediaWiki JS

/*
	get_usercontribs.js

	MediaWiki API Demos
	Demo of `Usercontribs` module: List user contributions.

	MIT License
*/

var params = {
		action: 'query',
		format: 'json',
		list: 'usercontribs',
		ucuser: 'Jimbo Wales'
	},
	api = new mw.Api();

api.get( params ).done( function ( data ) {
	var usercontrib = data.query.usercontribs,
		uc;
	for ( uc in usercontrib ) {
		console.log( usercontrib[ uc ].title );
	}
} );

الأخطاء المحتملة

الكود معلومات
invaliduserid معرف المستخدم username غير صالح.
paramempty_ucuser قد لا يكون الوسيط user فارغا.
baduser_ucuser قيمة غير صالحة "username" لوسيط المستخدم user.
show وسيط غير صحيحة; قد لا يتم تقديم قيم خاصة متبادلة.
permissiondenied تحتاج إلى صلاحيةpatrol أو patrolmarks لطلب علم مراجع.

تاريخ المتغيرات

  • v1.39: إضافة uciprange
  • v1.29: إضافة ucuserids
  • v1.23: ‏‏uctoponly متقادم
  • v1.23: إضافة ucshow=top, ucshow=!top, ucshow=new, ucshow=!new
  • v1.20: إضافة ucprop=sizediff
  • v1.18: إضافة uctoponly
  • v1.16: إضافة ucprop=parsedcomment, ucprop=size, ucprop=tags, uctag
  • v1.15: إضافة ucprop=patrolled, ucshow=patrolled, ucshow=!patrolled
  • v1.14: إضافة uccontinue
  • v1.13: إضافة ucuserprefix
  • v1.11: إضافة ucnamespace, ucprop, ucshow

ملاحظات إضافية

  • ترد هذه الوحدة البرمجية تعديلات الصفحات ونقل الصفحات، ولا ترد أعمال أخرى، مثل رفع الملفات.
  • قبل نسخة ميدياويكي 1.14، كان المتغير start يستخدم في استعراض نتائج إضافية داخل الرد. بين النسختين 1.14 و 1.22، كان start يستخدم في الاستمرار حينما يجري سرد قائمة مساهمات مستخدم واحد؛ وكان continue يستخدم حينما يجري سرد قائمة مساهمات عدة مستخدمين. بدءا من النسخة 1.23 وما بعدها، تستخدم كافة الاستفسارات continue.

انظر أيضا