Поисковик Yahoo! дает вам прекрасную возможность разработать свою собственную поисковую систему на платформе Search BOSS (от англ. Build your Own Search Service). Цель этой платформы — растить инновации в поисковой индустрии, её могут использовать разработчики в своих стартапах для создания и запуска расширяемого поискового сервиса, использующего полный индекс Yahoo!

Возможности Yahoo! Search BOSS
Запущен этот сервис в июле 2008 года и предоставляет следующие возможности:
Переранжирование и смешивание результатов поиска с другими результатами или специфическим контентом.Полная гибкость в представлении данных. Вы можете использовать любой пользовательский интерфейс без каких-либо брендов самой компании Yahoo!Искать сайты, картинки и новости. Используется вертикальный поиск.Неограниченое число запросов — нет никаких ограничений на количество запросов в день.Искать по ключевому слову связанные слова или фразы. Возможность добавилась в ноябре этого года.Настраивать геотаргетинг. В API запросе передается параметр страны или языка (детальнее см. документацию).
Разработчики беспрестанно работают над улучшением функциональности и расширением API, обеспечивая полный доступ к поисковой технологии Yahoo! В ближайшие месяцы планируется также введение платформы для монетизации владельцам своих проектов на основе Search BOSS.
Примеры поисковиков на основе Yahoo! Search BOSS
Вот несколько стартапов, использующие описаннуюу технологию для поиска информации пользователями: Me.dium, Hakia, Daylife To-Go, Cluuz.
Образец моей собственной поисковой системы
Чтобы не быть голословным, за несколько часов я разработал свой простенький javascript поисковик, на основе BOSSAPI. Вы можете пробовать ввести любые запросы в форму ниже. Если появятся Связанные ключевые слова, непременно кликните их для проверки функциональности.
#yahoo_frm, #yahoo_frm div,#yahoo_frm h3,#yahoo_frm h4,#yahoo_frm form,#yahoo_frm fieldset,#yahoo_frm input,#yahoo_frm p,#yahoo_frm ul,#yahoo_frm ol,#yahoo_frm li,#yahoo_frm img{margin:0;padding:0;} #yahoo_frm fieldset,#yahoo_frm img{border:0;} #yahoo_frm img,#yahoo_frm input,#yahoo_frm select{vertical-align:middle;} #yahoo_frm h3,#yahoo_frm h4{ font-family:Verdana,Arial,Tahoma,sans-serif; line-height:normal; font-weight:bold; text-transform:none; font-size:115%; padding:.7em 0; color:#000; } #yahoo_frm {font:normal 9pt/1.4em Verdana,Arial,Tahoma,sans-serif;} #yahoo_frm a:active,#yahoo_frm a:link,#yahoo_frm a:hover,#yahoo_frm a:visited{font:normal 1em/1.4em Verdana,Arial,Tahoma,sans-serif;color:#000;text-decoration:underline;} #yahoo_frm a:visited{color:#f0f;} #yahoo_frm a:hover{text-decoration:none;color:#ff0;} #yahoo_frm ul,#yahoo_frm ol{line-height:1.4em;list-style:none;} #yahoo_frm p,#yahoo_frm ul,#yahoo_frm ol{padding-bottom:1.2em;} #yahoo_frm h3{font-size:1.1em;} #yahoo_frm h4{font-size:1em;} #yahoo_frm .clear { font-size:1px; line-height:0%; clear:both; display:block; float:none; height:0%; overflow:hidden; } #yahoo_frm fieldset span {font-size:130%;} #yahoo_frm fieldset input {font-size:1em;} #yahoo_frm span#span_q {font-size:100%;line-height:30px;height:30px;overflow:hidden;padding:1px;float:left;display:none;border-bottom:1px solid #eee;} #yahoo_frm img#btn_go {background:url(/tools/boss/go1.gif) no-repeat center;} #yahoo_frm img#btn_go.loader {background:url(/tools/boss/ajax-loader.gif) no-repeat center;} #yahoo_frm .results {clear:both;} #yahoo_frm .results ol {list-style-type:decimal;list-style-position:inside;font-size:.95em;} #yahoo_frm .results li {margin-bottom:1em;} #yahoo_frm .results li em {font-size:1.2em;color:green;font-style:normal;} #yahoo_frm .results li a:link, #yahoo_frm .results li a:active, #yahoo_frm .results li a:hover, #yahoo_frm .results li a:visited {line-height:1.5em;color:#ff5a00;font-size:1.2em;} #yahoo_frm .results li p {padding-bottom:0;} #yahoo_frm .results li small a:link, #yahoo_frm .results li small a:active, #yahoo_frm .results li small a:hover, #yahoo_frm .results li small a:visited { color:#036; font-size:1.2em; text-decoration:none; white-space: pre-wrap; /* css-3 */ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ word-wrap: break-word; /* Internet Explorer 5.5+ */ } #yahoo_frm .results li small a:hover {text-decoration:underline;} #yahoo_frm .results ul li {display:block;float:left;width:33%;font-size:.85em;text-align:center;} #yahoo_frm .results ul li small a:link, #yahoo_frm .results ul li small a:active, #yahoo_frm .results ul li small a:hover, #yahoo_frm .results ul li small a:visited {padding:0 13px;} #yahoo_frm .results .key {cursor:pointer;text-decoration:underline;line-height:1.5em;font-size:.9em;font-style:italic;color:#09f;} #yahoo_frm #results {overflow:hidden;clear:both;}
Введите ключевое слово и нажмите стрелочку справа
С чего начать?
Для начала вам необходимо получить Yahoo! ID, то есть быть зарегистрированным у них Положим, иметь почту @yahoo.com). Это необходимо для того, чтобы сгенерировать себе APIKEY, который будет использоваться в ваших запросах. Зарегистрироваться как разработчик и получить APIKEY вы можете по этой ссылке: http://developer.yahoo.com/wsregapp/. Потом получения App ID внимательно прочитайте документацию по использованию API, либо некоторые моменты в этой статье ниже, а также непременно ознакомьтесь с правилами использования платформы.
Полезные идеи использования BOSS для сеошников
1. Можно по запросу получать связанные ключевые слова (фразы), создавая себе нужную базу. Для этого необходимо использовать параметр view=keyterms, а в качестве примера можно посмотреть запись в блоге Yahoo! для разработчиков.
2. Можно написать сервис для определения беклинков (обратных ссылок) на заданный сайт. Попробуйте в поисковую форму, приведенную выше в статье ввести запрос linkdomain:news2.ru или взамен news2.ru домен вашего сайта. В результате вы должны получить сайты, которые ссылаются на задданый.
3. Также вы можете придумать обилие своих идей использования этой замечательной платформы и сделать свой собственный поисковик.
Краткая документация по использованию Yahoo! BOSSAPI
URI запроса будет выглядеть следующим образом.
http://boss.yahooapis.com/ysearch/{vertical}/v1/{query}?appid=xyz[¶m1=val1¶m2=val2&etc]
Где vertical указывает, где отыскивать информацию – в web, картинках или новостях. Использовать необходимо, соответственно, значения web, images, news.
query — ключевое слово или фраза (некоторые спец. символы необходимо кодировать в URL формат).
xyz — ваш API ID, выданный при регистрации.
В качестве аргументов могут выступать следующие:
start – позиция первого результата поиска. По умолчанию 0.
count – количесво результатов, которое необходимо возвратить потом запроса. Максимальное значение 50, по умолчанию 10.
lang – язык поиска, по умолчанию en. (см. детальней перечень поддерживаемых языков)
region – позволяет творить геотаргетинг, возвращая результаты из нужной страны. (см. также перечень всех поддерживаемых стран)
format – формат данных результата. Может быть “xml” и “json”. По умолчанию используется json.
callback – название функции, которая будет обрабатывать результат. При серверных запросах обычно не указывается.
sites – ограничивает поисковые результаты для определенных сайтов. Несколько сайтов необходимо перечислять через запятую: sites=abc.com,cnn.com. Поиск по картинкам пока что не поддерживает этот аттрибут.
view – пока что можно только использовать view=keyterms.
Поля, возвращаемые при поиске по вебу:
count – количество результатов на странице.
start – номер первого результата (можно делать пейджинг, для тех, кто ещё не догадался).
totalhits – кол-во результатов без дублей (лишь приближенное значение).
deephits – кол-во результатов с учетом всех дублей и нескольких релевантных страниц с одного хоста (дается тоже приблизительная цифра).
abstract – сниппет с подсвеченными ключевыми словами.
title – заголовок с подсвеченными ключевыми словами.
url – URL результата.
clickurl – навигационный URL, который может проходить через редирект Yahoo! Разработчики рекомендуют использовать именно его в результатах выдачи.
dispurl – url документа с подсвеченными ключами.
size – размер документа в байтах.
date – дата в формате YYYY/MM/DD.
keyterms – при использовании view=keyterms содержит перечень связанных ключевых фраз.