Серпом по ссылкам

Расширение для Chromium и Firefox, извлекающее ссылки из результатов поиска Яндекса и Гугла

Описание

Сей скрипт предназначен для сбора ссылок из результатов поиска Яндекса и Google. Ссылки собираются в элемент textarea, который добавляется под результаты выдачи. Писался изначально для себя. Сейчас скрипт превратился в то, что не стыдно показать людям. На самом деле технически скриптов два (один - для Яндекса, другой - для Гугла). Так как они решают одну и ту же задачу, просто в разных поисковых системах, я счел логичным разместить их на одной странице. Будем считать, что это два модуля одного и того же скрипта, парсящего ссылки.


Особенности модуля для Яндекса такие.


Особенности модуля для Google такие.


Багрепорты принимаются на почту, которую можно найти в подвале.


Установка

Инструкция по установке в Chromium есть в разделе с кромешностями. Установка в Firefox абсолютно стандартная, проблем быть не должно.

На самом деле внутри два автономных UserJS (один скрипт для Яндекса, другой - для Гугла), так что можно распотрошить дополнение, и задействовать любой из скриптов отдельно - как обычный UserJS (например, через расширение Tampermonkey или иное подобное). Писались скрипты в разное время, чем объясняются некоторые отличия во внешнем виде. Объединение их в одно расширение позволяет не зависеть от сторонних дополнений, запускающих UserJS.

После успешной установки под результатами поиска станет появляться что-то такое:

Серпом по ссылкам: скриншот

Руководство пользователя

Что нужно иметь в виду.


Журнал версий

My Little SERParser 1.3

  • Добавлена сборка урлов из поиска в Яндекс.Новостях.
  • Уточнена область срабатывания скриптов.

My Little SERParser 1.2

  • Поправлен парсинг выдачи Гугла - с некоторых пор туда попадали также ссылки на перевод документов, теперь нет.
  • Небольшие корректировки области срабатывания скриптов.

My Little SERParser 1.1

  • Пользовательские скрипты превращены в расширение для Chromium / Firefox. И имя ему My Little SERParser.
  • У Гугла немного изменилась верстка, в связи с чем парсер стал собирать и те ссылки, которые собирать не нужно. Исправлено.
  • Добавлено еще несколько урлов, на которых скрипты работать не должны.

Яндекс 4.7.1

  • Минорное обновление: область работы скрипта чуть расширена, так как обнаружился еще один вариант ссылки на поисковую выдачу.

Яндекс 4.7

  • Добавлено извлечение ссылок из результатов нынешней версии поиска по блогам от Яндекса.
  • Починен фильтр рекламных (и иных ненужных) ссылок.
  • В исключения добавлено еще несколько ссылок на страницы, где скрипт работать не должен.

Яндекс 4.6

  • В связи с выходом модуля для парсинга Гугла сей модуль чуть сменил имя.
  • Добавлено еще одно исключение, чтобы скрипт не запускался там, где не нужно.
  • Чуть подправлены сообщения о копировании.
  • Добавлены переходы (плавное изменение состояния некоторых элементов).
  • В статистику добавлено выделение цветом чисел.
  • При наведении на кнопку курсор теперь меняет вид, призывая всенепременно кликнуть.
  • Вычисление ширины для элемента textarea теперь привязано к полю для ввода запроса, что, кажется, адекватнее и надежнее, нежели былая привязка к ширине всей поисковой шапки (там частенько чуть ли не половину занимает пустота).

Google 1.0

  • Первая версия скрипта для парсинга выдачи Гугла содержит если не все, то большую часть нужных фич определенно: парсит веб, сообщает статистику, копирует собранное в буфер обмена. Вангую, что будущие обновления чаще всего будут связаны с изменениями в верстке Гугла.

Яндекс 4.5.1

  • Минорное обновление: в поиске по людям чуть поменялась верстка, поэтому целевой класс в скрипте понадобилось обновить.

Яндекс 4.5

  • Добавлен сбор ссылок из Яндекс.Каталога. В связи с этим чуть доработана фильтрация ссылок.
  • В связи с асинхронной сущностью некоторый частей Яндекса, была проблемка с необновлением собранных ссылок при повторном запросе без полной перезагрузки страницы. Теперь скрипт следит за адресом в адресной строке браузера, и при изменениях в нем запускает себя снова. Задержка в несколько секунд сделана для того, чтобы новые результаты поиска успели подгрузиться.
  • Уточнена область работы скрипта. На некоторые устаревшие поисковые урлы скрипт ранее не реагировал, теперь реагирует. Также ранее скрипт пытался собирать ссылки там, где не надо; теперь он в ненужных разделах вовсе не запускается.

Яндекс 4.4

  • Скрипт теперь может работать более чем с одним классом ссылок на странице. Делалось это с определенной целью: нужно было извлекать из страницы дубликатов картинок не только ссылки на графические файлы, но и ссылки на страницы-источники картинок. Увы, в нынешней верстке в исходном коде просто нет нужных ссылок. Ну да ладно, может, в будущем понадобится.
  • В связи с предыдущим пунктом немного изменен дизайн: добавлены разделители, а граница textarea теперь сплошная.
  • Побежден AJAX при помощи задержки выполнения скрипта (см. Руководство пользователя).
  • В связи с предыдущим пунктом сделано ограничение на высоту элемента textarea: теперь если ссылок более 50, высота остается равной 50 строкам. Копий в картинках может быть более тысячи. Подумалось, что такая простыня не очень удобна.
  • С двумя кнопками я погорячился. Теперь она одна.
  • Модальные окна выпилены окончательно. Теперь все сообщения - только в мягкой форме.

Яндекс 4.2

Радикальное переосмысление скрипта, он переписан почти целиком.

  • Основной код перенесен в функцию.
  • Добавлен кое-какой дизайн.
  • Добавлена работа с поиском по людям.
  • Добавлена работа с дубликатами изображений в поиске по картинкам.
  • Добавлена статистика.
  • Добавлены кнопки выделения и копирования.
  • Добавлены сигналы об ошибках.

Яндекс 1-3

Старые версии скрипта вида со странным (впрочем, вполне рабочим) циклом и отсутствием какого-либо дружелюбия.