Вчера приделал интерфейс к гугловскому поисковику через их api. Нужно это было для автоматизации подбора изображений товаров. Результат вполне съедобный получился. Искать можно по наименованиям или штрих-кодам. API возвращает на запрос по 10 найденных ссылок на изображения, и далее по смещению. Нам достаточно первых 10. Ограничение для бесплатного использования 100 запросов в день. Насколько я понял, привязка к доменному имени. Если есть несколько доменных имен, то, соответственно, получим больше.
Информации по регистрации пользовательской поисковой машины в Гугле в интернете достаточно. Сделать это просто. В ее настройке можно ограничить поиск списком сайтов, а можно и не ограничивать.
С вебом я предпочитаю работать через вызовы php скриптов. На php запрос выглядит так. Значения key и cx получаются при регистрации поисковой машины.
Код:
<?php
$query = $_GET['q'];
$query = iconv("windows-1251", "UTF-8", $query);
$body = file_get_contents('https://www.googleapis.com/customsearch/v1?key=???cx=???searchType=image&fileType=jpg&imgSize=medium&alt=json&q='.urlencode($query));
$json = json_decode($body,true);
//var_dump($json);
foreach ($json['items'] as $result) {
echo $result['link'] . '<br>';
};
?>
Реализация в приложении такая.
Вначале в настройке программы включаем признак поиска изображений в интернете.
После этого в меню появляется пункт для журнала загрузок. Каждая загрузка - это документ, содержащий список товаров, по которым делается запрос.
Внутри документа последовательно выполняются операции на каждой закладке. Вначале формируем список товаров с учетом заданных критериев. Это те товары, для которых еще не подобрано фото и которые используются в системе электронных заказов. Дополнительно можно ограничить товарной группой и днями актуальности товаров, которых нет в остатках на складе. Размер списка 100 отражает ограничение поисковой машины по количеству запросов в день.