Wikidata:Доступ к данным
|
Викиданные для разработчиков: Доступ к данным |
На сегодняшний день Викиданные включают более 120 миллионов элементов и свыше 1,3 миллиона лексем, и эти показатели продолжают расти. Существует множество способов получить доступ ко всем этим данным — в данном документе они систематизированы и представлены так, чтобы помочь пользователям выбрать наиболее подходящий вариант в зависимости от их задач.
Важно выбрать способ доступа к данным, который обеспечит быстрое и эффективное получение нужной информации и при этом не будет создавать избыточной нагрузки на Викиданные. Эта страница призвана помочь сделать такой выбор.
Перед тем как начать
Использование информации из Викиданных

Викиданные предоставляют широкое разнообразие информации обо всём на свете. Все данные лицензированы как CC0, то есть как общественное достояние — «никакие права не защищены».
Изменения в те или иные API и другие способы доступа к Викиданным, относятся к сфере политики стабильности интерфейса. Для упомянутых на этой странице источников данных стабильные интерфейсы не гарантируются.
Проекты Викимедиа
Эта страница посещена доступу к данным за пределами проектов Викимедиа. Если вам необходимо использовать данные Викиданных в другом проекте Викимедиа, где доступны функции парсера, Lua и/или другие внутренние инструменты, см. страницу Как использовать данные в проектах Викимедиа.
Рекомендации по работе с данными

Мы предлагаем данные в Викиданных в соответствии с CC-0 — свободно и без каких-либо требований к атрибуции. В свою очередь, мы были бы весьма признательны за упоминание Викиданных в качестве источника данных. Поступая таким образом, вы помогаете гарантировать, что Викиданные будут использоваться в течение длительного времени для предоставления актуальных и высококачественных данных. Также мы поддерживаем и продвигаем наиболее интересные проекты, использующие данные Викиданных.
Примеры для указания источника: «На основе Викиданных» («Powered by Wikidata»), «На основе тегов Викиданных» («Powered by Wikidata Tags»), «На основе данных Викиданных» («Powered by Wikidata data»), «На основе магии Викиданных» («Powered by the magic of Wikidata»), «Using Wikidata data», «With data from Wikidata», «Data from Wikidata», «Source: Wikidata», «Including data from Wikidata», и т.д. Вы также можете использовать один из наших готовых файлов.
Можно использовать представленный выше логотип Викиданных, но при этом никоим образом не должно подразумеваться одобрение со стороны Викиданных или Фонда Викимедиа.
Пожалуйста, предоставьте пользователям способ сообщать об ошибках в данных и найдите способ передавать эту информацию сообществу редакторов Викиданных. В данный момент мы работаем над упрощением этого процесса, а пока сообщите, где вы собираете информацию об ошибках на Форуме.
Лучшие методы получения данных
При работе с данными Викиданных соблюдайте следующие рекомендации:
- Следуйте правилам использования User-Agent и указывайте корректный заголовок User-Agent.
- Следуйте политике для роботов: отправьте
Accept-Encoding: gzip,deflateи не делайте слишком много запросов сразу. - Если вы получаете ответ HTTP 429 Too Many Requests (слишком много запросов), перестаньте отправлять запросы на некоторое время (см. заголовок ответа Retry-After)
- Если имеется параметр "таймаут" (например, в Wikidata Query Service), устанавливайте наименьший таймаут, который имеет смысл для ваших данных.
- При использовании MediaWiki Action API, используйте параметр
maxlagпо необходимости и имейте в виду остальные правила, указанные в API:Etiquette.
Поиск
Что это?
Wikidata предлагает индекс Elasticsearch для традиционных поисковых запросов по своим данным: Special:Search
Когда его использовать?
Используйте поиск, когда вам нужно найти строку текста, или когда вы знаете имена сущностей, которые вы ищете, но не знаете конкретные сущности. Он также подходит для случаев, когда можно создать поисковой запрос на основе самых простых отношений (связей) в данных.
Не используйте поиск, когда отношения в ваших данных скорее можно описать как сложные.
Подробнее
Вы можете улучшить поисковой запрос, используя эти дополнительные ключевые слова, специфичные для Wikidata: haswbstatement, inlabel, wbstatementquantity, hasdescription, haslabel. Эта поисковая функциональность документирована на странице расширения CirrusSearch. У неё также есть свой API action.
Linked Data Interface (URI)
Что это?
Linked Data Interface даёт доступ к индивидуальным сущностям через URI: http://www.wikidata.org/entity/Q???. Такие URI называются концептуальными (concept) URI. Обратите внимания, что концептуальные URI используют HTTP, а не HTTPS.
Когда его использовать?
Используйте Linked Data Interface, если вам нужно получить индивидуальные полные сущности, которые вам уже известны.
Не используйте его, когда не знаете, какие объекты вам нужны - сначала попробуйте поисковые запросы. Он также не подходит для запросов больших объемов данных.
Подробнее

У каждого элемента или свойства есть постоянный URI, он состоит из основного пространства имён Викиданных (concept namespace) и идентификатора элемента или свойства, а также конкретных данных, которые можно получить из URL элемента или свойства.
Пространство имён для данных о сущностях - это https://wikidata.org/wiki/Special:EntityData.
Добавление к этому префиксу идентификатора сущности (сокращённо /entity/) создаёт «абстрактную» форму (в нейтральном формате) URL-адреса данных этой сущности. При запросе ссылке в пространстве имён Special:EntityData служебная страница применяет согласование содержимого, чтобы определить формат вывода. Если вы откроете эту ссылку в веб-браузере, отобразится HTML-страница с данными из Викиданных об этой сущности, из-за того, что веб-браузер предпочитает HTML. При этом другой (не браузерный) клиент получит данные о сущности в формате JSON или RDF, в зависимости от значения HTTP-заголовка Accept:.
- Например, возьмём этот концептуальный URI о Дугласе Адамсе – это ссылка на человека из реального мира, а не на конкретное описание из Викиданных:
http://www.wikidata.org/entity/Q42
- Как человеческое существо с глазами и браузером, вы скорее всего хотите получить данные о Дугласе Адамсе, используя конкретный URI как URL. Если вы это сделаете, это приведёт к HTTP-редиректу (созданию перенаправления) и браузерный клиент перейдёт к URL, содержащему данные из Викиданных о Дугласе Адамсе: https://www.wikidata.org/wiki/Special:EntityData/Q42.
Если вам не нужно использовать автоматическое согласование содержимого использовать (например, при просмотре в веб-браузере не-HTML материалов), можно явно указать формат данных сущности, дополнив URL расширяющим суффиксом; например, .json, .rdf, .ttl, .nt or .jsonld. К примеру, https://www.wikidata.org/wiki/Special:EntityData/Q42.json выдаст элемент Q42 в формате JSON.
Менее подробный RDF
По умолчанию RDF, возвращаемый из Linked Data Interface, является автономным (самодостаточным), и включает описания других объектов, на которые он ссылается. Добавьте в запрос параметр ?flavor=dump, чтобы исключить эту информацию.
Добавив &flavor= к URL, вы можете точно контролировать, какие данные возвращаются.
?flavor=dump: Исключает описания сущностей, на которые элемент данных ссылается.?flavor=simple: Выдаёт только истинные ("truthy") заявления (заявлению с лучшим рангом без квалификаторов или ссылок), вместе с sitelinks и информацией о версии.?flavor=full(default): Аргумент "full" возвращает все данные (его не нужно указывать, потому что это значение по умолчанию).
Если вы хотите более подробную информацию о том, что именно означает каждый вариант, вы можете взглянуть на исходный код.
Ревизии и кэширование
Вы можете запросить конкретные ревизии сущности, используя параметр запроса revision: https://www.wikidata.org/wiki/Special:EntityData/Q42.json?revision=112.
Следующие форматы URL используются пользовательским интерфейсом и системой обновления служебных запросов, поэтому, если вы используете такой же формат URL, есть шанс получить быстрые (закэшированные) ответы:
- https://www.wikidata.org/wiki/Special:EntityData/Q42.json?revision=1600533266 (JSON)
- https://www.wikidata.org/wiki/Special:EntityData/Q42.ttl?flavor=dump&revision=1600533266 (RDF, без описания других сущностей)
Сервис запросов Викиданных
Что это такое?
Сервис запросов Викиданных (WDQS) это API эндпойнт (конечная точка) для SPARQL. Он возвращает результаты запросов, сделанных на языке запросов SPARQL: https://query.wikidata.org
Когда его использовать?
Используйте WDQS, когда вы знаете только характеристики желаемых данных.
Не используйте WDQS для поиска текста или нечёткого (fuzzy) поиска – FILTER(REGEX(...)) это антипаттерн. (Используйте поиск.)
WDQS также не подходит, если нужные вам данные скорее всего будут составлять большой (значимый) процент от всех данных в Викиданных. (тогда лучше использовать дампы.)
Подробнее
Вы можете запросить информацию из Викиданных с помощью точки доступа SPARQL — см. Сервис запросов Викиданных. Сервис может использоваться как в качестве интерактивного веб-интерфейса, так и программно, путём отправки запросов GET или POST запросов в https://query.wikidata.org/sparql.
The query service is best used when your intended result set is scoped narrowly, i.e., when you have a query you're pretty sure already specifies your resulting data set accurately. If your idea of the result set is less well defined, then the kind of work you'll be doing against the query service will more resemble a search; frequently you'll first need to do this kind of search-related work to sharpen up your query. See the Search section.
The query service at query.wikidata.org only contains the main graph of Wikidata. The Items related to scholarly articles are in a separate query service at query-scholarly.wikidata.org. For more details see Wikidata:SPARQL query service/WDQS graph split.
Linked Data Fragments endpoint
Что это такое?
The Linked Data Fragments (LDF) endpoint is a more experimental method of accessing Wikidata's data by specifying patterns in triples: https://query.wikidata.org/bigdata/ldf. Computation occurs primarily on the client side.
Когда его использовать?
Use the LDF endpoint when you can define the data you're looking for using triple patterns, and when your result set is likely to be fairly large. The endpoint is good to use when you have significant computational power at your disposal.
Since it's experimental, don't use the LDF endpoint if you need an absolutely stable endpoint or a rigorously complete result set. And as mentioned before, only use it if you have sufficient computational power, as the LDF endpoint offloads computation to the client side.
Подробнее
If you have partial information about what you're looking for, such as when you have two out of three components of your triple(s), you may find what you're looking for by using the Linked Data Fragments interface at https://query.wikidata.org/bigdata/ldf. See the user manual and community pages for more information.
Wikibase REST API
Что это такое?
The Wikibase REST API is an OpenAPI-based interface that allows users to interact with, retrieve and edit items and statements on Wikibase instances – including of course Wikidata: Wikidata REST API
When to use it?
The Wikibase REST API is still under development, but for Wikidata it's intended to functionally replace the Action API as it's a dedicated interface made just for Wikibase/Wikidata.
The use cases for the Action API apply to the Wikibase REST API as well. Use it when your work involves:
- Редактирование Викиданных
- Получение прямых данных о самих сущностях
Не используйте REST API Викиданных, если результат запроса скорее всего будет большим (подумайте об использовании dump).
It's better not to use the Wikibase REST API when you'll need to further narrow the result of your API request. In such cases it's better to frame your work as a search (for Elasticsearch) or a query (for WDQS).
Подробнее
The Wikibase REST API has OpenAPI documentation using Swagger. You can also review the developer documentation.
MediaWiki Action API
Что это такое?
The Wikidata API is MediaWiki's own Action API, extended to include some Wikibase-specific actions: https://wikidata.org/w/api.php
Когда его использовать?
Используйте API, когда ваша работа включает:
- Редактирование Викиданных
- Получение данных о самих сущностях, например, история их ревизий
- Получение всех данных о конкретной сущности в формате JSON, организованное в небольших запросах (до 50 сущностей на запрос).
Не используйте API, если результат скорее всего будет большим (тогда используйте dump).
The API is also poorly suited to situations in which you want to request the current state of entities in JSON. (For such cases consider using the Linked Data Interface, which is likelier to provide faster responses.)
Finally, it's probably a bad idea to use the API when you'll need to further narrow the result of your API request. In such cases it's better to frame your work as a search (for Elasticsearch) or a query (for WDQS).
Подробнее
The MediaWiki Action API used for Wikidata is meticulously documented on Wikidata's API page. You can explore and experiment with it using the API Sandbox.
There are multiple Wikibase specific endpoints. Here is an example request:
Боты

Доступ к API можно осуществлять ботом. См. Wikidata:Bots.
Поток недавних изменений
Что это такое?
Поток "Недавние изменения" выдаёт непрерывный поток (stream) изменений всех вики Викимедиа, включая Викиданные: https://stream.wikimedia.org
Когда его использовать?
Используйте поток "Недавние изменения", когда вашему проекту нужно реагировать на изменения в режиме реального времени или когда вам нужны все последние изменения, поступающие из Викиданных - например, при запуске собственной службы запросов.
Подробнее
Поток "Недавние изменения" содержит все обновления из всех вики, которые поддерживают протокол Server-sent events. Вам нужно отфильтровать обновления Викиданных на стороне клиента.
Веб-интерфейс находится на stream.wikimedia.org, а его документация на странице EventStreams.
Векторная база данных Викиданных
Что это?
The Wikidata Vector Database stores high-dimensional vector representations of Wikidata entities. It enables semantic search based on meaning and context rather than keyword matching, and supports natural-language queries against entities.
Когда его использовать?
Use vector search for exploration purposes, for example, when you want to uncover entities without explicitly knowing their labels, or when you need to narrow a search down to a smaller, more relevant subgraph of Wikidata as a starting point for further research before moving on to more structured tools.
The vector database can also be used in AI/ML pipelines, such as enabling semantic search in RAG workflows or applying vector distances to tasks like classification and other types of analysis.
Подробнее
You can find more information on the Wikidata Vector Database page. The Wikidata Vector Database is available at wd-vectordb.wmcloud.org, and the API documentation can be found at wd-vectordb.wmcloud.org/docs.
MCP Викиданных
Что это?
The Wikidata MCP (Model Context Protocol) provides a set of standardized tools that allow large language models (LLMs) to explore and query Wikidata programmatically. It is designed for agentic AI or AI workflows that need to search, inspect, and query Wikidata, without relying on hardcoded assumptions about its structure or content.
Когда его использовать?
Use the Wikidata MCP when you want to integrate Wikidata directly into a GenAI model or into AI/ML workflows. The MCP provides a set of tools for exploring and accessing Wikidata, but it is limited to read-only use and does not include editing functionality.
Подробнее
The Wikidata MCP is implemented as an HTTP service available at wd-mcp.wmcloud.org. To use it, add https://wd-mcp.wmcloud.org/mcp/ as a connector in your AI client.
Dumps
Что это?
Wikidata dumps are complete exports of all the Entities in Wikidata: https://dumps.wikimedia.org
Когда его использовать?
Используйте dump, когда ожидается, что результат будет очень большим. Также dump полезен, если вы создаёте собственный сервис запросов.
Не используйте dump, если вам нужны текущие данные: в процессе экспорта dump занимает очень долгое время, если у вас есть синхронизация с собственным сервисом запросов, то это будет ещё дольше. Dump также не подходит, если у вас существенные ограничения на доступную полосу пропускания, пространство для хранения и/или вычислительную мощность.
Подробнее
If the records you need to traverse are many, or if your result set is likely to be very large, it's time to consider working with a database dump: (link to the latest complete dump).
You'll find detailed documentation about all Wikimedia dumps on the "Data dumps" page on Meta and about Wikidata dumps in particular on the database download page.
Инструменты
- JsonDumpReader is a PHP library for reading dumps.
- A Go library exists for processing Wikipedia and Wikidata dumps.
- You can use wdumper to get partial custom RDF dumps.
Local query service
It's no small task to procure a Wikidata dump and implement the above tools for working with it, but you can take a further step. If you have the capacity and resources to do so, you can host your own instance of the Wikidata Query Service and query it as much as you like, out of contention with any others.
To set up your own query service, follow these instructions from the query service team, which include procuring your own local copy of the data. You may also find useful information in Adam Shorland's blog post on the topic.