Недавно в очередной раз юзая быстрый поиск по Википедии через поисковое поле в Опере, подумал, что давно пора бы добавить в этот список несколько дополнительных, наиболее часто используемых поисковых серверов.
Сложного в этом ничего нет, особенно при знании как работают формы в html, но даже если с этим проблемы - не беда, в большинстве случаев можно обойтись и без знаний (а можно и разобраться).
хттп=http ;)
Метод первый. Самый простой.
- Открываем страничку с нужным нам поиском.
- Тыкаем курсором в нужное поисковое поле на этой страничке, жмем правую кнопку мыши, выбираем Создать поиск...
- Смотрим, если что-то хотим изменить - изменяем.
- Наслаждаемся результатом.
В некоторых ситуациях может не сработать (пример тому – torrents.ru), виной этому может быть использованный в форме JavaScript.
Метод второй.
Простой, но работающий только с GET запросами.
(Запросы бывают двух типов - GET, когда данные из формы передаются через url и видны в адресной строке браузера, и POST когда данные передаются в теле запроса и при этом пользователю не видны).
Этот метод жутко прост. Заходим на , вводим в поисковое поле какое-то слово или значение, например 12345, жмем кнопку Поиск, смотрим в адресную строку браузера, видим примерно следующее:
хттп://www.youtube.com/results?search_type=&search_query=12345&aq=f
теперь в адресе нашу строку 12345 нужно заменить на %s, и можно добавлять в Оперу.
Из меню заходим в Инструменты- >Настройки (Ctrl+F12), на вкладке Поиск, жмем кнопку Добавить и вводим следующие данные:
Название: YouTube
Клавиша: yt
Адрес:
Вот собственно и все, таким методом можно добавить практически все интересующие вас поиски.
Метод третий.
Наиболее сложный, но всегда работающий.
(Если хочется понять, что, как, и почему).
Для начала немного теории.
Отправка на сервер поискового запроса осуществляется с помощью формы, то есть для начала нам нужно найти форму, отвечающую за поиск. Форма начинается с тега < form > и заканчивается тегом < /form >. Внутри формы объявлены поля, имена и значения которых будут передаваться на сервер, т.е. кроме поля куда мы вводим слово которое хотим найти, могут быть еще и скрытые поля, которые мы не видим, они передают различную служебную информацию. Необходимо найти нужную нам форму (их может быть несколько на странице) и для удобства скопировать ее полностью в какой либо текстовый редактор. Далее нужно изучить ее, выяснить имена всех полей передаваемых на сервер, и их значения, и затем составить поисковый запрос.
Не люблю много нудной теории, поэтому переходим сразу к практике, на примере поиска по YouTube.
Заходим на , видим поисковое поле с кнопкой поиска, видим что слово "Поиск" на кнопке копируется, то есть кнопка - не рисунок, значит можно поискать нужную нам форму через это слово. Открываем исходный код страницы (Ctrl+U в Опере), и поиском (Ctrl+F) ищем форму...
Ахха! Попалась! Вот так выглядит искомый кусок кода:
Выглядит довольно-таки ужасно, но если убрать все не нужное нам, получится гораздо нагляднее:
Попробуем сформировать поисковый запрос. Т.к. форма находится на страничке а в атрибуте action формы прописано /results, получаем адрес , теперь определимся с тем, что мы будет отправлять в запросе.
Ставим знак вопроса в конце адреса, это будет говорить о том, что все что будет далее - переменные (имена полей) и содержащаяся в них информация (значения), т.е. проще говоря, если есть поле, имя которого например field, а значение к примеру 12345 (< input name="field" value="12345" >) то в запросе это будет выглядеть так:
хттп://www.site.com/results?field=12345
если таких полей будет несколько, то они будут разделяться знаком амперсанда:
хттп://www.site.com/results?field1=12345&field2=67890
Теперь смотрим на нашу форму, у нас два поля и оба пусты, получаем следующее:
хттп://www.youtube.com/results?search_type=&search_query=
Как подсказывает интуиция само поисковое слово, введенное нами должно находиться в поле search_query (если отбросить интуицию, у этого поля есть атрибут type="text", что означает что это текстовое поле, в которое пользователь может что-либо ввести, если type="hidden" - поле скрытое), это означает что введенное поисковое слово должно находиться именно в этом поле. В Опере фраза (слово) введенное в поисковое поле обозначается как %s , т.е. нужный нам запрос будет выглядеть так:
хттп://www.youtube.com/results?search_type=&search_query=%s
Проверим, подставив вместо %s какое либо слово, и перейдя по этому адресу:
Если все работает, значит можно добавлять. О том, как это сделать написано выше, в методе втором.