维基百科API,如何获得单段

时间:2018-02-02 16:39:22

标签: javascript wikipedia-api

请告诉我如何生成像这样的网址请求

var CityURL = 'https://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=boston&format=json&formatversion=2&exintro=1&callback=?';
在API

中对这样的wiki进行Group C
https://en.wikipedia.org/wiki/2018_AFC_Champions_League_group_stage#Group_C

我已经尝试过这个

    var games= 'https://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=2018_AFC_Champions_League_group_stage#Group_C&format=json&formatversion=2&exintro=1&callback=?';

但没有得到任何东西

这是返回页面的第一段

    var games= 'https://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=2018_AFC_Champions_League_group_stage&format=json&formatversion=2&exintro=1&callback=?';

但正如我所说,我只需要#Group_C并且完整的网址不会返回任何内容

  $(document).ready(function(){
        var games= 'https://en.wikipedia.org/w/api.php?action=query&prop=extracts&titles=2018_AFC_Champions_League_group_stage#Group_C&format=json&formatversion=2&exintro=1&callback=?';

        $.getJSON(games,function(data) {
            $.each(data.query.pages, function(i, item) {
                       $('div#details2').html(item.extract);
            });
        });
    });

1 个答案:

答案 0 :(得分:2)

您可以使用action=parse获取特定部分的HTML。

首先,你必须通过调用

来找出sectionindex
https://en.wikipedia.org/w/api.php?action=parse&prop=sections&page=2018_AFC_Champions_League_group_stage&format=json&formatversion=2&callback=?

在这种情况下,“Group_C”的索引是8。

以下网址返回所需部分的文字。只需将参数section替换为上一个请求获得的索引号即可。

https://en.wikipedia.org/w/api.php?action=parse&prop=text&page=2018_AFC_Champions_League_group_stage&section=8&format=json&formatversion=2&callback=?