Поисковый робот
Программа, которая загружает страницу, извлекает ссылки и повторяет всё снова — пока интернет не кончится, чего не случается никогда.
Основной цикл прост: загрузить, извлечь ссылки, добавить в очередь, повторить. Сложности лежат в другом. Очередь должна убирать дубликаты адресов с одинаковым содержимым, справляться с бесконечными пространствами вроде календарей и фасетных фильтров и расставлять приоритеты, что стоит перезагружать: новостной сайт меняется каждую минуту, страница руководства — раз в три года.
Есть и требования вежливости. Робот должен соблюдать robots.txt, представляться в user agent и ограничивать частоту запросов к хосту, чтобы случайно не устроить отказ в обслуживании. Крупные поисковики выделяют каждому сайту краулинговый бюджет в зависимости от скорости и надёжности его ответов. Боты ИИ-компаний за последние годы превратили конвенции вежливости из технического вопроса в политический.