Яндекс поиск на вашем сайте
Раздел:
Programming /
PHP
@
14.08.2008 |
Ключевые слова: яндекс поиск на сайте xml php
Автор: nod
Источник: habrahabr
Приведу пример класса, который можно использовать в качестве поисковика на вашем сайте.
Для работы класс использует сервис Яндекс.XML. В свободном режиме они разрешают использовать до 1000 запросов в день. Условия использования сервиса на xml.yandex.ru
Яндекс.XML — это сервис, позволяющий делать автоматические поисковые запросы к Яндексу и публиковать его ответы у себя на сайте в собственном дизайне. Поиск от Яндекса — это быстрый доступ к сотням миллионов документов и изображений.
С помощью Яндекс.XML вы можете предлагать своим пользователям:
- поиск по вашему сайту (в той мере, в какой этот сайт проиндексирован Яндексом);
- поиск по сети или ее части (регион, отрасль), результаты которого могут показываться на вашем сайте и в вашем дизайне, и сервисы на его основе — Яндекс.XML открывает большие возможности для исследователей поисковых систем и преподавателей;
- поиск изображений, опубликованных в сети.
Данный скрипт реализует работу только полнотекстового поиска.
Пример работы скрипта, можно посмотреть здесь: kolesa.kz/search/?stext=Toyota
Изначально класс писался для сайта, чьи исходники в формате ANSI (windows 1251). Поэтому в коде могут повстречаться интересные ICONV. Причина появления таких перекодировок следующая: ответ приходит в UTF-8 а сам код в cp-1251. И чтобы в результате смешения кодировок не получился СЮРПРИЗ, приходится изгаляться.
Для работы вы можете все подчистить, и сделать так как вам нравиться. Это всего лишь пример.
Класс не использует никаких шаблонов, для целостности примера. Чтоб вы могли его запустить сразу.
Единственно необходимо удостовериться в том, что:
- у вас PHP5
- хостер вам разрешает работать с сокетами
- подключено расширение для php под название DOM
- вы зарегистрировались на Яндексе и вбили IP адрес вашего сервера
- define(«SEARCH_ADT_QUERY»,«<< url=\»kolesa.kz/content/*\«»); — указывает на ваш сайт
Класс находится по адресу: docs.google.com/Doc?id=dcn4jhdv_4gt4qgzfq
UPD0 Вариант скрипта от Яндекса: xml.yandex.ru/games/site-search-php.html (спасибо Normull, когда писали класс, этого еще не было)
UPD1 На который у меня не хватило сил, но отлично дополнил Groove:
Для партнеров яндекса, установивших поисковой директ на свои сайте это ограничение снимается.
Т.е., если вы дадите пользовать результатами поиска всем его посетителям, при условии, что там стоит Директ на сайте — вас никто не забанит.
А вот если вы просто собираете выдачу например для seo-анализа, бан неминуем.
Только про это имелось в виду.
Это интересно:
Распечатать статью
Вернуться в раздел:
Programming /
PHP
Реклама: