Jump to content

API:已删除的修订

本頁使用了標題或全文手工轉換
本頁使用了標題或全文手工轉換
From mediawiki.org
This page is a translated version of the page API:Deletedrevs and the translation is 100% complete.
MediaWiki版本:
≤ 1.25
(在1.25版本中已弃用) 此处所描述的API文档會最適用於MediaWiki 1.14及更早版本。 它已被棄用,取而代之的是alldeletedrevisions API。

使用GET 請求以列出已刪除的修訂版本。

API帮助文档

list=deletedrevs (dr)

(main | query | deletedrevs)
  • This module is deprecated.
  • This module requires read rights.
  • Source: MediaWiki
  • License: GPL-2.0-or-later

List deleted revisions.

Operates in three modes:

  1. List deleted revisions for the given titles, sorted by timestamp.
  2. List deleted contributions for the given user, sorted by timestamp (no titles specified).
  3. List all deleted revisions in the given namespace, sorted by title and timestamp (no titles specified, druser not set).

Certain parameters only apply to some modes and are ignored in others.

Specific parameters:
Other general parameters are available.
drstart

The timestamp to start enumerating from.

Modes: 1, 2
Type: timestamp (allowed formats)
drend

The timestamp to stop enumerating at.

Modes: 1, 2
Type: timestamp (allowed formats)
drdir

In which direction to enumerate:

newer
List oldest first. Note: drstart has to be before drend.
older
List newest first (default). Note: drstart has to be later than drend.
Modes: 1, 3
One of the following values: newer, older
Default: older
drfrom

Start listing at this title.

Mode: 3
drto

Stop listing at this title.

Mode: 3
drprefix

Search for all page titles that begin with this value.

Mode: 3
drunique

List only one revision for each page.

Mode: 3
Type: boolean (details)
drnamespace

Only list pages in this namespace.

Mode: 3
One of the following values: 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, 710, 711, 828, 829, 850, 851, 1198, 1199, 1728, 1729, 2600, 5500, 5501
Default: 0
drtag

Only list revisions tagged with this tag.

druser

Only list revisions by this user.

Type: user, by any of username, IP, Temporary user, interwiki name (e.g. "prefix>ExampleName") and user ID (e.g. "#12345")
drexcludeuser

Don't list revisions by this user.

Type: user, by any of username, IP, Temporary user, interwiki name (e.g. "prefix>ExampleName") and user ID (e.g. "#12345")
drprop

Which properties to get:

revid
Adds the revision ID of the deleted revision.
parentid
Adds the revision ID of the previous revision to the page.
user
Adds the user who made the revision.
userid
Adds the ID of the user who made the revision.
comment
Adds the comment of the revision.
parsedcomment
Adds the parsed comment of the revision.
minor
Tags if the revision is minor.
len
Adds the length (bytes) of the revision.
sha1
Adds the SHA-1 (base 16) of the revision.
content
Adds the content of the revision. For performance reasons, if this option is used, drlimit is enforced to 50.
token
Deprecated. Gives the edit token.
tags
Tags for the revision.
Values (separate with | or alternative): comment, content, len, minor, parentid, parsedcomment, revid, sha1, tags, user, userid, token
Default: user|comment
drlimit

The maximum amount of revisions to list. If drprop=content is used, the limit is 50.

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

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

Examples:
List the last deleted revisions of the pages MediaWiki and Talk:Main Page, with content (mode 1).
api.php?action=query&list=deletedrevs&titles=MediaWiki|Talk%3AMediaWiki&drprop=user|comment|content [open in sandbox]
List the last 50 deleted contributions by Bob (mode 2).
api.php?action=query&list=deletedrevs&druser=Bob&drlimit=50 [open in sandbox]
List the first 50 deleted revisions in the main namespace (mode 3).
api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50 [open in sandbox]
List the first 50 deleted pages in the Talk namespace (mode 3).
api.php?action=query&list=deletedrevs&drdir=newer&drlimit=50&drnamespace=1&drunique= [open in sandbox]

示例

GET请求

列出用戶Catrope在2007年9月4日刪除的6個最新修訂版本。

回应

<?xml version="1.0" encoding="utf-8"?>
<api>
  <query-continue>
    <deletedrevs drstart="20070904142729" />
  </query-continue>
  <query>
    <deletedrevs>
      <page title="Main Page" ns="0" token="e4c475f13be7824135b4edbebf4140ff+\">
        <revisions>
          <rev timestamp="20070904200804" revid="31" user="Catrope" minor="" len="" />
          <rev timestamp="20070904200753" revid="30" user="Catrope" minor="" len="" />
          <rev timestamp="20070904193501" revid="29" user="Catrope" minor="" len="568" />
          <rev timestamp="20070904193213" revid="28" user="Catrope" minor="" len="470" />
        </revisions>
      </page>
      <page title="User:Catrope" ns="2" token="e4c475f13be7824135b4edbebf4140ff+\">
        <revisions>
          <rev timestamp="20070904143938" revid="24" user="Catrope" len="52" />
          <rev timestamp="20070904142758" revid="23" user="Catrope" len="37" />
        </revisions>
      </page>
    </deletedrevs>
  </query>
</api>

示例代码

get_deleted_revisions.py

#!/usr/bin/python3

"""
    get_deleted_revisions.py

    MediaWiki Action API Code Samples
    Demo of `Deletedrevs` module: List the six most recent deleted revisions
    from User:Catrope

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "drend": "20070904000000",
    "format": "json",
    "druser": "Catrope",
    "list": "deletedrevs",
    "drstart": "20070904235959",
    "drlimit": "6",
    "drprop": "revid|user|minor|len|token",
    "action": "query"
}

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

print(DATA)

可能的错误

代码 信息
drpermissiondenied You don't have permission to view deleted revision information. On most wikis, viewing deleted revisions is restricted to sysops, but other wikis may have different rules.

参数历史

  • v1.24: 弃用drprop: token
  • v1.23: 启用drtag, drprop: tags
  • v1.19: 启用drprop: sha1
  • v1.18: 启用drto, drprefix, drprop: parentid
  • v1.17: 启用drprop: userid
  • v1.16: 启用drprop: parsedcomment
  • v1.15: 启用druser,drexcludeuser,drnamespace, drunique,drfrom

补充资料

  • 该模块不可用作生成器 。
  • 您需要deletedhistory权限以使用此模块。 此模組可使用以下三種模式之一:
    • 列出(透過titles或某個生成器)給定標題的已刪除修訂版本,並依照時間戳排序。
    • 列出特定使用者已刪除的貢獻,依照時間戳排序(有設置druser、未提供標題)
    • 列出特定命名空間中所有已刪除的修訂版本(未設置druser、未提供標題)
  • 某些參數僅限於特定模式,並已相應標記。

参阅