Получить все значения слова Википедии на любом языке

Я хотел бы получить список всех значений слова в Википедии. Например, для слова "bar" двусмысленности перечислены по адресу http://en.wikipedia.org/wiki/Bar_(disambiguation):

  • Бар (учреждение)
  • Десертный бар
  • Дайв бар
  • ...

Есть ли способ получить доступ к неоднозначности слов из разных языков из API Википедии?

Для английского языка, я думаю, URL в основном отформатированы, как указано выше (с неоднозначностью в заголовке). Но для испанского или других языков URL для страницы устранения неоднозначности отличается.

Я попытался просмотреть страницу категории, на которой перечислены все страницы устранения неоднозначности (например, http://en.wikipedia.org/w/index.php?title=Category:All_article_disambiguation_pages&pagefrom=a), но на нем нет списка неоднозначности для условий.

1 ответ

В большинстве (всех?) Выпусках Википедии теперь установлено расширение для устранения неоднозначности, что означает, что вы можете получить доступ ко всем страницам устранения неоднозначности из API:

api.php?action=query&list=querypage&qppage=DisambiguationPages

Однако в вики WMF, таких как Википедия, существует ограничение на количество результатов, которые вы можете получить таким образом, поэтому, если они вам нужны, вам нужно загрузить дамп базы данных и повторить запрос (в этом случае вы можете прочитать немного в таблице page_props, и сделайте SQL-запрос против этого).

Второй подход заключается в использовании WikiData и запросе всех страниц, которые являются экземпляром (P31) страницы неоднозначности Викимедиа (Q4167410).

Другие вопросы по тегам