У меня есть приложение, которое посещает все страницы веб-сайта рекурсивно.Например, моя программа получает URL-адрес, подобный этому https://example.com/
.Я начинаю с открытия URL и получаю все ссылки со страницы.Теперь я открываю первую ссылку и получаю все ссылки с этой страницы ... и т. Д.
Для любой страницы, которую я открываю, я бы хотел посчитать чистый URL в массиве / dict.С чистой ссылкой я имею в виду, что URL-адрес, подобный этому https://example.com/blog/isdf
, становится таким-то URL-адресом, чтобы хранить их в массиве / dict: https://example.com/blog/
.Но у URL есть больше "нижних сторон", таких как https://example.com/blog/isdf/abc
Я бы хотел сохранить их в массиве, например: https://example.com/blog/isdf/
.
Например, для этого списка URL, который я открыл:
https://example.com/
https://example.com/blog/
https://example.com/blog/category/
https://example.com/blog/category/abc
https://example.com/blog/category/def
https://example.com/blog/category
https://example.com/products/
https://example.com/products
https://example.com/products/123
https://example.com/products-dd
Я хотел бы получить массив / dict следующим образом:
['/blog'] = 1
['/blog/category'] = 3
['/products'] = 2
...
И теперь, прежде чем открывать URL, я всегда хотел бы проверить количество в массиве / dict.Если бы подсчет с нижней стороны> 3, я бы не открыл URL.
Я не знаю, как я могу реализовать или написать фильтр, который может это сделать.
Я надеюсь, что мои мысли ипримеры понятны!