Подтвердить что ты не робот

Получение информации об изображении и авторских правах в wiki commons

Я пытаюсь использовать wikimedia API для wiki commons по адресу:

http://commons.wikimedia.org/w/api.php

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

4b9b3361

Ответ 2

Вы можете попробовать использовать Инструмент Magnus Manske Commons API на Wikimedia Toolserver. Это не официальная услуга, и документация выглядит довольно скудной (т.е. Почти несуществующей), но вывод XML кажется довольно само собой -explanatory.

Я не могу найти источник для Magnus script где угодно, но я предполагаю, что он извлекает информацию о лицензировании из categories к файлу принадлежит. Если вы захотите, вы можете сделать это сами: просто выберите список категорий и, при необходимости, поднимите дерево категорий, пока не найдете категорию лицензии вы узнаете. Увы, для древовидной части требуется либо несколько запросов API, либо база данных категорий Commons (либо прямой доступ на сервере Toolserver, либо реконструированная копия из базы данных dumps).

Да, я понимаю, что этот ответ может показаться неудовлетворительным. Дело в том, что Magnus script кажется самым близким в настоящее время к тому, что вы хотите, и даже он обозначен как экспериментальный и неполный. В принципе, это проблема, ожидающая, когда кто-то сможет реализовать (лучшее) решение.

Ответ 3

Я использовал Инструмент Magnus Commons API. Он не предназначен для простого удаления в проект, но если вы скопируете источник вики-страницы, он вызывает и кэширует его локально, а затем переводит логику в класс, который вы можете сделать более легко вызываемым. Здесь источник для версии Magnus. Если вы хотите, чтобы класс, который я создал из него, дайте мне знать, и я его выкопаю.

Ответ 4

От http://www.mediawiki.org/wiki/API_talk:Main_page#Image_license_information Есть ли способ получить лицензию на изображение через api? По категории, вероятно, проще всего, если сайт классифицируется по лицензии. Для получения информации о лицензии нет встроенного модуля. Спларка 08:45, 22 января 2010 (UTC)

Однако я считаю, что использование категорий не возвращает ничего для многих изображений, даже если у них есть лицензия. Возможно, лучший способ - проанализировать отображаемый html страницы изображения.

Ответ 5

см. страницу: http://www.mediawiki.org/wiki/API:Meta

Вы можете использовать foreach изображение тега meta = siteinfo и тег 'siprop = rightsinfo' (siprop - это ссылка на siteinfo) Затем вы увидите правную правку изображения.

В вашем случае с Брэдом Питтом это будет выглядеть так:

http://en.wikipedia.org/w/api.php?format=jsonfm&action=query&titles=File:Brad_Pitt_at_Incirlik2.jpg&prop=imageinfo&iiprop=url&meta=siteinfo&siprop=rightsinfo