получить список однозначных омонимов из википедии / викиданных / связанных данных - PullRequest
0 голосов
/ 23 сентября 2018

Если я ищу "George Bush" вручную в Википедии, я получу эту страницу , в которой перечислены омонимы с короткими описаниями.

Я бы хотел передать свой поиск в API и получитьследующая информация:

  • Джордж Буш-старший
  • Джордж Буш-младший
  • Джордж Буш (библейский ученый)
  • Джордж Буш (футболист)
  • Джордж Буш (автогонщик)
  • Джордж П. Буш
  • Джордж Вашингтон Буш

Я не против получить больше, пока ямогу однозначно разобрать его.

Моя цель - сделать так, чтобы пользователи веб-сайта могли помечать публичного человека, но я хочу ограничить их выбор и избежать двусмысленностей, поэтому этот список может немного отличаться, любая другая достойная база данных сAPI подойдет.

Я не понял, как это сделать с помощью Википедии или Викиданных, я просто успел выполнить запросы на конкретном идентификаторе / странице, когда узнал, что здесь не так..

1 Ответ

0 голосов
/ 01 октября 2018

Есть несколько способов сделать это, в зависимости от того, какой тип данных вы хотите.

Например - https://en.wikipedia.org/w/api.php?action=query&titles=George%20Bush&prop=links - скажет вам, есть ли для этого «неоднозначность»имя человека.

То, что будет возвращено:

               {
                    "ns": 0,
                    "title": "Bush family"
                },
                {
                    "ns": 0,
                    "title": "George Brush (disambiguation)"
                },
                {
                    "ns": 0,
                    "title": "George Bush (biblical scholar)"
                },
                {
                    "ns": 0,
                    "title": "George Bush (footballer)"
                },
                {
                    "ns": 0,
                    "title": "George Bush (racing driver)"
                },
                {
                    "ns": 0,
                    "title": "George H. W. Bush"
                },
                {
                    "ns": 0,
                    "title": "George P. Bush"
                },
                {
                    "ns": 0,
                    "title": "George W. Bush"
                },
                {
                    "ns": 0,
                    "title": "George Washington Bush"

Вы можете получить больше данных одновременно, используя - https://en.wikipedia.org/w/api.php?action=query&utf8=&list=search&srsearch=George%20Bush

Это даст вам:

    "search": [
        {
            "ns": 0,
            "title": "George W. Bush",
            "pageid": 3414021,
            "size": 299185,
            "wordcount": 27007,
            "snippet": "<span class=\"searchmatch\">George</span> Walker <span class=\"searchmatch\">Bush</span> (born July 6, 1946) is an American politician who served as the 43rd President of the United States from 2001 to 2009. He had previously",
            "timestamp": "2018-09-26T21:48:08Z"
        },
        {
            "ns": 0,
            "title": "George H. W. Bush",
            "pageid": 11955,
            "size": 210189,
            "wordcount": 20867,
            "snippet": "<span class=\"searchmatch\">George</span> Herbert Walker <span class=\"searchmatch\">Bush</span> (born June 12, 1924) is an American politician who served as the 41st President of the United States from 1989 to 1993. Prior",
            "timestamp": "2018-10-01T06:41:50Z"
        },
...