lleo (lleo) wrote,
lleo
lleo

Category:

про картинки

это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2017/02/07.html

Внезапно на НТВ реклама Олюшки и авторских автостопных рюкзаков Алексея Ворова. Как нам сказали, была тема про лондонское метро и видимо редактор нагуглил подходящую картинку:

Пользуясь случаем, скажу, что вполне приветствую и разрешаю любое использование иллюстраций из моего блога (License Public). Олька, правда, пошутила, что можно подать в суд, но я напомнил, что я — как раз тот самый человек, который сам вчера сваял робота, который выкачал мне из интернета 5000 чужих картинок для одного моего программного проектика, связанного с английским языком (о нем расскажу позже).

При этом, кстати, оказалось, что API поиск по картинкам в Гугле и Яндексе давно забанен про причине несусветной жадности этих монстров. А нам, разработчикам, остался только API от Microsoft. Что наконец впервые подтверждает мою позицию: будучи убежденным противником Microsoft всю свою сознательную жизнь и всячески радуясь потерям его позиций год от года, я при этом всегда подчеркивал, что я не враг Microsoft, и что Microsoft следует всячески беречь, уважать, холить и лелеять, чтобы он ни в коем случае не умер. А жил вечно, создавая здоровую честную конкуренцию всем остальным IT-монстрам. И вот в моей жизни это первый случай (не считая нежной мною любимого Winword — к нему хоть есть аналоги), когда Microcoft дает технологию, которой не могут (или не хотят) дать подлые конкуренты. В общем, от всей души большое спасибо Microsoft за тот редкий сервис, который нам отрезали подлецы из Google и Yandex! Впрочем, Microsoft не был бы Microsoft, если бы его сайт не тормозил, регистрация не была бы столь крива, а описание и настройки API не были бы такими запутанными, не подвисали и не глючили:

Но глючил только сайт. Само API работает на удивление быстро, рекомендую. Всем интересующимся выкладываю пример рабочего скриптика, который на каждое из заданных слов выкачивает про 3 картинки. На сервисе у Microsoft надо только зарегистрироваться и получить ключ с правом 5000 бесплатных запросов в месяц (мой ключ, что вы видите в примере, разумеется, изменен для публикации, и работать у вас не будет):

#!/usr/bin/php
<?php
// API: https://msdn.microsoft.com/en-us/library/mt712546.aspx
// API: https://www.microsoft.com/cognitive-services/en-US/subscriptions
$KEY="4fecdb04b9ad4837b6867b12b3cf8fa6";
$WORDS=array('хуй','пизда','джигурда');
$NFOTOS=3;
foreach($WORDS as $q) {
    $o=exec("curl -v -X GET 'https://api.cognitive.microsoft.com/bing/v5.0/images/search?q=".urlencode($q)
    // ."&license=Public&color=White&imageType=Clipart"
    ."' -H 'Ocp-Apim-Subscription-Key: ".$KEY."'");
    $stop=$NFOTOS; $p=(array)json_decode($o); if(!isset($p['value']) || empty($p['value'])) echo "`$q` not found\n";
    else foreach($p['value'] as $i=>$e) { if(!$stop--) break; $e=(array)$e;
    exec('curl -v "'.$e['thumbnailUrl'].'" > "'.$q.'-'.$i.'.jpg"');
    }
}
?>

Для моей задачи оставалось лишь скачать по 5 картинок на каждое из 1000 слов и сделать веб-апликуху, которая бы позволяла оператору выбрать одним кликом мышки более подходящую для каждого из слов. Слова в моем словаре были простые "зайчонок", "медвежонок", "змееныш", найти к ним картинки для Microsoft было несложно. Проблем возникло две.

Во-первых, картинки Публичной Лицензии глючили. Например по слову "зайчонок" и "лисенок" они показывали каких-то размалеванных школьниц из соцсетей. Пришлось положить болт на авторские права (собственно, к чему я всю эту историю и вспомнил) и отказаться от публичной лицензии.

Неожиданная проблема возникла лишь с некоторыми словами. Например по слову "змееныш" поиск упорно давал обложки каких-то говнокниг серии "S.T.A.L.K.E.R":

Но штука полезная, рекомендую. Я вот думаю, не сделать ли на Бинонике сервис подбора картинки к посту? У Биноника наступает, кстати, вторая жизнь: сейчас заменим серверную часть и займусь им вплотную.



это перепост заметки, оригинал находится на моем сайте: http://lleo.me/dnevnik/2017/02/07.html
Tags: программирование, разбираю фото
Subscribe
  • Post a new comment

    Error

    default userpic

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 3 comments