Как получить список всех фильмов на Wikidata?
Я использовал Freebase, чтобы получить все фильмы / фильмы для моего сайта, но он скоро закрывается. поэтому я искал другую бесплатную базу данных для фильмов и наткнулся на Wikidata. Честно говоря, слишком сложно понять, как запрашивать все фильмы.
Поэтому я подумал, что вы, ребята, могли бы помочь мне получить все фильмы в Викиданных. В будущем я хочу включить телешоу и сериалы.
Язык программирования не имеет значения, я хочу использовать веб-запрос со ссылкой.
1 ответ
Вы можете искать все сущности, которые являются экземпляром фильма, который в Викиданных переводится как:
P31 (экземпляр) -> Q11424 (фильм)
На данный момент лучший способ выполнить этот запрос - использовать API wdq.wmflabs.org, где этот запрос переводится как: http://wdq.wmflabs.org/api?q=claim[31:11424]
(не делайте этот запрос в браузере, так как он, вероятно, приведет к сбою из-за). На данный момент я пишу, этот запрос возвращает 157038 элементов в виде числовых идентификаторов (например: 125
). Чтобы получить идентификаторы Wikidata, просто добавьте ведущий Q
-> Q125
,
Чтобы получить метки и данные от всех этих идентификаторов Wikidata, используйте API Wikidata wbgetentities
действие: https://www.wikidata.org/w/api.php?action=wbgetentities&ids=Q180736&format=json&languages=en
, Остерегайтесь ограничения в 50 сущностей на запрос, хотя
[ОБНОВЛЕНИЕ] Wikidata теперь предлагает конечные точки SPARQL: тот же запрос в SPARQL или даже тот же запрос, но также включая подклассы фильмов