1

Так что я Викисклад URL (который на самом деле просто обертка для фактического изображения), например: https://commons.wikimedia.org/wiki/File:Nine_inch_nails_-_Staples_Center_-11-8-13(10755555065_16053de956_o).jpgИспользуйте Wikimedia изображения на моем сайте

Если я иду на эту страницу, я могу видеть, что фактическое изображение на: https://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/Nine_inch_nails_-_Staples_Center_-11-8-13%2810755555065_16053de956_o%29.jpg/800px-Nine_inch_nails_-_Staples_Center_-11-8-13%2810755555065_16053de956_o%29.jpg

Я хотел бы получить фактические файлы, чтобы использовать его в теге <img>.

Я подозревал, что они дадут вам параметр url, чтобы вернуть местоположение, но я ничего не могу с этим поделать.

Заранее спасибо.

EDIT:

Я думаю, что я нашел ответ здесь: https://commons.wikimedia.org/wiki/Commons:FAQ#What_are_the_strangely_named_components_in_file_paths.3F

Странные пути в загрузке буквы из хэша MD5 файла.

+2

Если вы нашли ответ, то ответ на свой вопрос, вместо того, чтобы редактировать его –

+0

будет делать, как только я получаю написанная функция я сделаю так. – thouliha

ответ

0

Фигурные его, вот немного Java я написал сделать это правильно:

public static String convertWikimediaCommonsURLToImageUrl(String wmLink) { 

    String fileName = wmLink.split("File:")[1]; 

    String md5 = Hashing.md5().hashString(fileName, Charsets.UTF_8).toString(); 

    String weirdPathString = md5.substring(0, 1) + "/" + md5.substring(0, 2) + "/"; 
    String imageURL = "https://upload.wikimedia.org/wikipedia/commons/" + weirdPathString + 
      fileName; 

    return imageURL; 
} 
+0

Это просто дублирует внутреннее решение MediaWiki, которое вы, возможно, захотите использовать API MediaWiki. См. Http://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&prop=imageinfo&format=json&iiprop=url&iiurlwidth=220&titles=File%3AAlbert%20Einstein%20Head.jpg для примера –

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