Текущих операторов мне не хватало всегда. Различных функций поиска в Google предостаточно, но вот реализованы некоторые из них совершенно неюзабельно. Например, почему для того, чтобы задать язык искомых вебстраниц, я должен каждый раз лезть в «Advanced Search» или редактировать переменные GET-запроса в урле страницы? Про на автомате вбиваемый «&num=100» я уж и не говорю. Самое странное, что часть параметров из «Advanced Search» реализована в виде операторов, часть — нет.
Я всегда хотел, чтобы появились дополнительные поисковые операторы, покрывающие эти, довольно полезные функции. И только вчера вечером я догнал: «Ведь можно реализовать их с помощью user.js!» Набросал планчик, засел на несколько часов (ибо джаваскриптер из меня никакой) и проапдейтил уже известный вам «Tuned Google SERPs».
Итак, на сей момент доступны следующие операторы:
co:<двухбуквенный_код_страны> — задаёт страну, из которой вы осуществляете вебсёрфинг. Бывает полезно, если вы решили посмотреть «а какие позиции мой сайт имеет в выдаче для Аргентины».
lang:<двухбуквенный_код_языка> — задаёт язык страниц, отображаемых в результатах. Например, вы ищете материалы на русском о новомодном геджете или программе. Как многие делали раньше? Писали англоязычное название и какое-нибудь русское слово. Например: «iphone 3g обзор». Но во-первых, это сужает круг поисков, во-вторых, Гугл последнее время ориентируется на то, что это слово было в ссылке на статью, сама статья при этом может быть англоязычной и слова не содержать. Установив скрипт, мы смело пишем «iphone 3gs lang:ru» и наслаждаемся полным диапазоном материалов на русском. Второй случай, который приходит на ум — это пересечение слов в разных языках. Например, по русским запросам иногда вылазят болгарские страницы. Я, впервые увидев их, удивлённо подумал, что это страницы очередного удаффовского сайта. При помощи оператора «lang:» можно откинуть эти посторонние страницы.
loc:<двухбуквенный_код_страны> — задаёт страну, в которой расположен вебсайт.
num:<число_от_1_до_100> — задаёт количество выдаваемых результатов. Казалось бы, почему не установить «100» в настройках поиска! Однако, как правило, классических десяти вполне хватает. Лишь в некоторых, особых случаях надо увеличить это количество.
В реализации операторов есть одно «но»: если вы, как и я, используете поисковую строку браузера или шорткаты поиска прямо в адресной строке браузера — операторы работать не будут в силу того, что это всего лишь javascript, встраиваемый непосредственно в страницу, а не в браузер. Однако подобные, «хитрые» операторы чаще всего используются для уточняющих повторных запросов, после того, как мы увидели, что обычный запрос выдал совсем не то, что мы хотели. Ну, а повторные запросы мы вбиваем уже на страницах поисковика, там, где скрипт сработает.
Устанавливаем, тестируем, сообщаем о багах, вносим дельные предложения по усовершенствованиям…
P. S. Кто пропустил — Tuned Google SERPs делает ещё несколько интересных вещей, читайте о них в предыдущих постах.
Комментариев: 19
Тормоз
September 30th, 2009 at 00:54
1Блин, а как бы сделать, чтобы в адресной строке тоже работало?
samlowry
September 30th, 2009 at 01:08
2Я слеплю и захощу где-нить серверный скрипт во время следующего апдейта этого скрипта (т. к. ещё несколько фич хочу добавить).
Тормоз
September 30th, 2009 at 01:46
3Мне кажется, это тоже через JS можно сделать, не обязательно серверный. Серверный ведь будет медленнее работать – факт.
samlowry
September 30th, 2009 at 11:30
4Эээ, каким образом? user.js выполяется только после загрузки документа. Если ты предлагаешь не user.js, а просто положить на винт пагу — то тут встаёт доп. факт: пользователь должен что-то куда-то ложить. А выложь эту пагу куда-то, она закешируется один раз — и всё (если делать не через server-side, а через javascript).
Тормоз
September 30th, 2009 at 16:45
5А как работает нынешний JS, каким образом он включает эти параметры?
samlowry
September 30th, 2009 at 19:23
6При сабмите парсит строку, добавляет соотв. скрытые поля с параметрами. И это действие, есесна, делается _после_ загрузки паги. До загрузки можно сделать только какими-то плагинами, но я пишу только пользовательские скрипты, ибо пока что оперщик. Ну и покатят они везде, где есть их поддержка.
Тормоз
September 30th, 2009 at 21:16
7Но эти скрытые поля ведь через URL передаются в Google? Тогда серверный вариант точно не нужен, в адресной строке может исполняться JS. Вот пример.
samlowry
September 30th, 2009 at 22:16
8Ты не понял. Эти поля скрипт вставляет в форму сабмита. Потом, когда жму кнопку «искать» — идёт запрос к странице выдачи. Т. е. в технологии нужно загрузить сначала одну какую-нибудь страницу гугла, и только после ввода запроса в ней и сабмита его всё начинает работать.
Тормоз
September 30th, 2009 at 22:48
9Может быть, конечно, именно я не понял, но скорей всего не понял ты :) В Google поля формы передаются через GET, значит операторы можно применять не загружая лишние страницы, просто конструируя нужный URL. Это простейшая задача для JS (но не для тупого в JS тормоза).
samlowry
September 30th, 2009 at 23:11
10Ага, вот только где этот твой JS что, сферический конь в вакууме? Когда я в адресной строке буду писать запрос с этими параметрами — к чему этот запрос будет идти? Нету таких user.js, которые могут при запросе к Гуглу в адресной строке перехватить адресную строку, изменить её, и только потом дать браузеру грузить Гугл.
Я и говорю — только пагу класть на винт и добавлять в настройках браузера свой «поисковик». А идея была в том, что человек качает 1 скрипт, кладёт его в папку и ничего не меняет в своей работе.
samlowry
September 30th, 2009 at 23:13
11А, слово «вот пример» я чего-то не увидел. МЕЛКО ПИШЕШЬ ВАЖНУЮ ИНФУ, ТОВАРИЩ!!! Тады да — я это могу лементарно сделать. Ведь есть даже стандарт для добавления кастом поисковиков одним кликом.
Тормоз
September 30th, 2009 at 23:17
12Ну наконец-то :)
samlowry
September 30th, 2009 at 23:18
13Кстати, ты вот довольно ловко на любой пук достаёшь урлы на свой блог. Откуда? Какова технология? Я лично постоянно пишу site:with.in бла-бла, и это мне чутка лень делать, поэтому я их не так ловко достаю.
Тормоз
September 30th, 2009 at 23:23
14У меня на сайте есть поисковая форма, которую, я, кстати, до сих пор что-то не внедрил в браузерную адресную строку. И у тебя тоже есть поисковая форма, между прочим.
Тормоз
September 30th, 2009 at 23:24
15Только там регистрозависимый русский поиск, к сожалению (древние баги UTF-8 в PHP), зато ищется по подстроке (иногда так удобней).
samlowry
September 30th, 2009 at 23:37
16Там — у тебя? Т. к. в ВП поиск вообще какой-то дико убогий (ни разу ничего не нашёл им).
Тормоз
September 30th, 2009 at 23:47
17у меня.
Humor
October 8th, 2009 at 05:10
18Я вот на свой сайт установил поиск от гугла, да не просто поис а еще и с адсенсом, и ищет хорошо и деньга капает :)
Блог кузьмича » Приятный скрипт для мониторинга позиций в SERP
November 2nd, 2009 at 00:37
19[...] Хотелось бы еще что сказать, есть также такой же скрипт для Google – за это отельное спасибо блоггеру и вебмастеру samlowry (смысл своего скрипта подсмотрел у него). В его скрипте есть нумерация позиций в Google (ох как мне этого не хватало) и много других полезных фич. Подробнее об скрипте samlowry. [...]