Создал сканер Гиперссылок на сайте.
Принцип действия такой:
Задается начальная страничка.
Содержимое странички Полностью записывается в файл, файл считывается и циклом парсится на предмет наличия гиперссылок.
Каждая последующая ссылка записывается в новую строку таблицы 1
Затем
Сворачиваю табличку – убивая дубликаты.
Потом
Содержимое таблицы сливается (добавляется) в таблицу 2
И все последующие проходы идут уже по ссылкам из таблицы 2
Куда при каждом проходе добавляются строки из таблицы 1
При каждом добавлении сворачиваю с суммированием доп столбца, в котором отмечаю пройденные– чтобы не было повторов и повторных прогонов.
Все отлично.
По окончании можно отфильтровать.
И тут (звучит тревожная музыка…, резкий гром!)
Оказывается, что таблицы имеют ограничение строк!!!!!
До 99 999 !!!!
Караул!!!!!
И вот теперь вопрос:
Научите, пожалуйста, как устанавливать глубину гиперссылок?
Например: http://novichok1c.ru/forumy/programmirovanie
Где
/novichok1c.ru – 1
/forumy - 2
/programmirovanie -3
И т.д.
Как научить машину отличать их?
Чтобы можно было сразу убрать не нужные и оставить лишь те, которые нужны.
Конечно можно проверить на содержит: /forumy/programmirovanie остальные удалить.
А если будет сайт другой и нужно будет задать глубину – 3, а там /каталог/рубрика и т.д…
Вопрос как раз в универсальности.
Именно различать глубину ссылки…
guru
пт, 20/10/2017 - 11:01
Вариант вычислять количество вхождений символа "/ " не подойдёт?
Vzonder
пт, 20/10/2017 - 11:06
Может быть.
Не знаю.
Можете показать простой пример?
Vzonder
пт, 20/10/2017 - 11:11
Речь идет об этом:
СтрЧислоВхождений(<Строка>, <ПодстрокаПоиска>). Возвращает число вхождений указанной подстроки в строку. Функция чувствительна к регистру.
?
guru
пт, 20/10/2017 - 11:22
Да.
Vzonder
пт, 20/10/2017 - 14:29
Спасибо.
Сегодня проверю.
По итогам отпишусь.
Vzonder
вт, 24/10/2017 - 18:25
guru
вт, 24/10/2017 - 19:42
Можно добавить проверку последнего символа. Если это "/", то обрезать ссылку на 1 один символ: