2015-08-05 9 views
1

Я хочу, чтобы отобразить изображения из Викисклада внутри моего сайта (как ссылки) с помощью следующей MediaWiki-апите вызов для поиска изображений:Получение информации о лицензии из API MediaWiki?

https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&list=allimages&format=json&aifrom=LG%20G4&aiprop=dimensions%7Cmime&ailimit=5

Это возвращает результат поиска, содержащий все изображения, которые соответствуют моему запросу , Но то, что я не вижу в этом ответе, - это информация о лицензии. Я могу получить информацию о загрузке с помощью «user» внутри aiprop, но как получить информацию о лицензии (например, CC-BY-SA)?

+0

I подумайте, что вам понадобится [Commons API] (https://commons.wikimedia.org/wiki/Commons:Commons_API). – svick

+0

IMHO API общедоступного контента получает информацию о различных вариантах лицензии, но нет, какое изображение использует какую лицензию? –

ответ

1

Как уже было сказано, расширение API extmetadata предоставляет информацию о лицензии. Формат результата немного громоздким, а некоторые поля дублированы с различными правописанием, поэтому я создал PHP обертку image-attribution:

$attribution = commons_image_attribution("Loewe_frontal.JPG"); 
$credit = $attribution['credit']; 

реакция имеет следующую структуру (здесь дается как JSON):

{ 
    "src": "https://upload.wikimedia.org/wikipedia/commons/a/ac/Loewe_frontal.JPG", 
    "url": "https://commons.wikimedia.org/wiki/File:Loewe_frontal.JPG", 
    "description": "Portrait of a young lion (Panthera leo), taken at Tierpark Hellabrunn, Munich.", 
    "creator": "Martin Falbisoner", 
    "date": "2012-07-14 15:39:06", 
    "attribution": true, 
    "license": "CC BY-SA 3.0", 
    "credit": "CC BY-SA 3.0: Martin Falbisoner" 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^