2014-09-15 3 views
-1

Недавно мне было предложено подключить приложение базы данных музыкальных баз данных к википедии. Он хочет обновить свою базу данных художников с дискографиями и каждым альбомом со своими треками и синглами. Он настаивает на использовании википедии.Получить дискографию и трек-листы исполнителя по API Википедии

Я посвятил некоторое время изучению wikimedia api, но я не знаком с структурой Википедии и до сих пор не смог создать набор запросов, которые могли бы получить меня, что я хочу. В базе данных клиентов каждый художник имеет строку идентификатора из Wikidata (что-то вроде Q123). Я считаю, что это может быть моей отправной точкой - с помощью wikidata, чтобы перейти к правой странице wikipedia. Но оттуда я потерялся.

Есть ли у кого-то хорошее знание википедии api, кто был бы готов дать мне указания о том, как получить эту конкретную информацию?

+0

Кажется, что раздел дискографии на страницах художников не делается одинаково для всех художников. Вам нужно будет вручную разобрать все данные ... –

+0

Кстати, у вас есть реальный пример строки идентификатора? –

+0

@ HampusBrynolf Идентификатор, например, Q392 для страницы Викикатата Боба Дилана – j0hny

ответ

1

Прямо сейчас, запросы на Wikidata строятся, поэтому это пока невозможно с помощью официального API. Тем не менее, есть инструмент под названием Wikidata Query (documentation), который может делать такие вещи.

Здесь an example, используя этот запрос: CLAIM[31:(TREE[482994][][279])] AND CLAIM[175:392]. Он ищет объекты, имеющие свойство 31 (экземпляр) со значением чего-либо в дереве (подгруппа), начиная с (альбом) и имеет свойство 175 (исполнитель) с значением 392 (Боб Дилан). Он возвращает идентификаторы Викидата альбомов, которые вы, в свою очередь, можете найти на этикетке в API Викидата. Вам просто нужно изменить значение для исполнителя, чтобы получить ответ для любого исполнителя.

+0

Спасибо за ответ! Кажется, что это может быть правильный путь. Я постараюсь реализовать это сегодня ;-) – j0hny