API:Externe Links

This page is a translated version of the page API:Extlinks and the translation is 87% complete.
MediaWiki Version:
1.11

GET-Abfrage um eine Liste aller externen Links auf den angegebenen Seiten zu erhalten.

API-Dokumentation

(main | query | extlinks)

Returns all external URLs (not interwikis) from the given pages.

Specific parameters:
Other general parameters are available.
ellimit

How many links to return.

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

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

elprotocol

Protocol of the URL. If empty and elquery is set, the protocol is http and https. Leave both this and elquery empty to list all external links.

One of the following values: Can be empty, or bitcoin, ftp, ftps, geo, git, gopher, http, https, irc, ircs, magnet, mailto, matrix, mms, news, nntp, redis, sftp, sip, sips, sms, ssh, svn, tel, telnet, urn, worldwind, xmpp
Default: (empty)
elquery

Search string without protocol. Useful for checking whether a certain page contains a certain external url.

elexpandurl
Deprecated.

Expand protocol-relative URLs with the canonical protocol.

Type: boolean (details)


Example

GET request

Erhalte eine Liste externer Links auf einer Seite.

Antwort

{
    "continue": {
        "elcontinue": "http://ch.unibe.philosci40./lehre/winter99/einstein/Walker_S|267300440",
        "continue": "||"
    },
    "query": {
        "pages": {
            "736": {
                "pageid": 736,
                "ns": 0,
                "title": "Albert Einstein",
                "extlinks": [
                    {
                        "*": "http://sedici.unlp.edu.ar/handle/10915/2785"
                    },
                    {
                        "*": "http://sedici.unlp.edu.ar/handle/10915/2786"
                    },
                    {
                        "*": "http://einstein.biz/"
                    },
                    ...
                ]
            }
        }
    }
}

Beispielcode

Python

#!/usr/bin/python3

"""
    get_extlinks.py
    MediaWiki API Demos
    Demo of `Extlinks` module: Get a list of external links on a page
    MIT License
"""

import requests

S = requests.Session()

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

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

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

print(DATA)

PHP

<?php

/*
    get_extlinks.php
    MediaWiki API Demos
    Demo of `Extlinks` module: Get a list of external links on a page
    MIT License
*/

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

/*
    get_extlinks.js
    MediaWiki API Demos
    Demo of `Extlinks` module: Get a list of external links on a page
    MIT License
*/

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

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

/*
	get_extlinks.js
	MediaWiki API Demos
	Demo of `Extlinks` module: Get a list of external links on a page
	MIT License
*/

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

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


Parameterhistorie

  • v1.21: elexpandurl eingeführt
  • v1.18: elprotocol, elquery eingeführt
  • v1.13: ellimit, eloffset eingeführt

Siehe auch