Блог Краснодарского Программиста

О чём этот сайт: на сайте я собираю рабочие рецепты и способы решения возникающих задач, записываю выжимки из учебных материалов, чтобы потом к ним возвращаться и пользоваться в рабочем процессе. Пользуйтесь и вы. Удачи!

Определение ссылок на странице, их количества и типа через bash-скрипт

[bash]

В справочнике по Linux нашёл описание UNIX-утилиты dog, но потом обнаружилось, что её убрали. Пока я её не нашёл, а нашёл замену. Работу средствами консольного браузера lynx.

Итак, напишем скрипт поиска внутренних ссылок на странице сайта (links.on.page.sh):

#!/bin/bash
#=======================================================================
# Скрипт поиска внутренних ссылок на странице сайта
#=======================================================================
URL="$1" ; # адрес страницы заданный через аргумент к скрипту

# уникальные внутренние ссылки:
GiveMeListUrlOnPage () {
lynx -dump -nonumbers -listonly $URL | grep $URL | sort | uniq ;
}

GiveMeListUrlOnPage ;

exit 0

Запускаем скрипт, поиск уникальных внутренних ссылок на странице сайта:

$ sh links.on.page.sh krdprog.ru

если надо сохранить в файл:
$ sh links.on.page.sh krdprog.ru > url.txt

если надо показать количество ссылок, то так:
$ sh links.on.page.sh krdprog.ru | wc -l

Можно определять также скрытые и внешние ссылки. Как использовать? Можно, дописать, например, определитель структуры сайта, или скрипт подготовки sitemap.xml, или в связке со скриптом достающим из ТОП-10 Яндекса адреса сайтов по конкретному ключевому слову, создать анализатор сайтов в ТОП Яндекса по словам (покажет для каждого сайта сколько ссылок на странице), а также разработать анализатор перелинковки сайтов.