Разбор и сборка sitemap.xml — парсер и генератор карты сайта
Два режима в одном окне: карта сайта разбирается в таблицу с фильтром, а список ссылок собирается в готовый sitemap.xml с датой lastmod.
Задача из будней: вытащить из sitemap.xml список адресов, чтобы загнать его в краулер, сверить с индексом или раскидать по задачам. Открываете файл в браузере, а там XML на три экрана, и руками из него ничего не выберешь.
Инструмент выше работает в двух режимах. Разбор превращает карту сайта в таблицу, сборка делает обратное: из списка ссылок собирает готовый sitemap.xml.
Когда это нужно
SEO-специалисту на аудите: посмотреть, что вообще лежит в карте сайта у клиента или у конкурента. Контент-менеджеру: выгрузить адреса раздела и разобрать их по задачам. Разработчику маленького сайта, где карта не генерируется движком и проще собрать её руками.
Отдельная история: переезд на новый домен или смена структуры адресов. Карта старого сайта здесь превращается в список того, что нельзя потерять. Разберите её в таблицу, выгрузите адреса текстом и положите в первую колонку таблицы редиректов. Во вторую впишите новые адреса. По этому же списку потом проверяют, что каждый старый адрес отвечает 301-м и ведёт куда надо. Когда на переезде висит живой трафик, мы переносим сайт вместе с редиректами и проверяем ответы по всему списку после запуска.
Как устроен файл
Внутри корневого тега urlset лежат блоки url, по одному на страницу. В каждом блоке до четырёх тегов:
- loc: адрес страницы, единственный обязательный тег.
- lastmod: дата последнего изменения в формате 2026-09-16.
- changefreq: как часто страница меняется. Поисковики давно смотрят на этот тег сквозь пальцы.
- priority: вес страницы внутри сайта, от 0.1 до 1.0. Влияет разве что на порядок обхода.
У формата есть потолки: 50 000 адресов и 50 МБ на один файл. Сайт крупнее разбивают на несколько карт и перечисляют их в индексе, отдельном файле с тегом sitemapindex. Браузер разберёт и карту на десятки тысяч строк, но таблица будет собираться несколько секунд.
Режим разбора
Вставьте XML в поле или загрузите файл с диска. Ниже появится таблица из двух колонок, адрес и дата изменения, а рядом счётчик найденных URL.
Кнопка загрузки ждёт обычный .xml. Многие сайты отдают карту сжатой, файлом sitemap.xml.gz. Распакуйте архив и вставьте содержимое в поле: разворачивать gzip инструмент не умеет, вместо таблицы вы увидите ошибку разбора.
Поле фильтра отбирает адреса по куску строки: написали /blog/, остались только статьи, и счётчик тут же пересчитался по отфильтрованному списку. Тем же приёмом считают товары. Фильтр по /catalog/ даёт число карточек в карте, и вы сверяете его с выгрузкой из 1С. Разошлось на сотню? Значит, часть товаров в карту не попала. Отфильтрованный список копируется кнопкой или скачивается текстовым файлом.
Вставили индекс карт сайта? Инструмент это заметит и покажет список вложенных файлов. Разбирайте их по очереди, адреса страниц лежат внутри.
Кривая разметка не проходит молча. Если XML не разбирается или в нём нет ни одного loc, инструмент напишет об этом прямо под полем, и вы сразу поймёте, что чинить.
Режим сборки
Здесь наоборот. Вставляете адреса по одному в строке, и XML собирается сразу.
Дата lastmod проставляется сегодняшним числом, галочку можно снять. Значения changefreq и priority выбираются из списков, а если оставить их незаданными, в файл они не попадут. Результат копируется или скачивается как sitemap.xml.
Спецсимволы в адресах экранируются. Амперсанд в параметрах ссылки файл не сломает.
Что делать с готовым файлом
Положите его в корень сайта, чтобы карта открывалась по адресу вида example.ru/sitemap.xml. Проверьте, что файл отдаётся кодом 200 и не закрыт авторизацией: робот зайдёт к нему без пароля.
Добавьте в robots.txt строку Sitemap с полным адресом карты, вместе с протоколом. Её пишут в конце файла, и она действует на всех роботов сразу.
Дальше скажите про карту поисковикам. В Яндекс Вебмастере это раздел «Индексирование», пункт «Файлы Sitemap». В Google Search Console нужный пункт лежит в левом меню и называется так же. Обе панели потом покажут, сколько адресов робот прочитал и сколько взял в индекс. Расхождение между этими числами и есть ваш список задач.
О чём помнить
Разбор и сборка идут в браузере. Файл никуда не загружается, на сервер не уходит ни строки, поэтому карту закрытого стенда можно смотреть спокойно.
По ссылкам инструмент не ходит. Он читает текст, который вы вставили, и не знает, отвечают адреса из карты или давно отдают 404.
При сборке дата у всех адресов получается одна: сегодняшняя. Это не реальная дата правки страницы, и поисковику она ничего полезного не скажет.
Отсюда правило: постоянную карту сайта лучше отдавать движком, а ручная сборка выручает на разовых задачах и маленьких проектах, где генератора просто нет.
Частые вопросы
Чем карта для картинок отличается от обычной и умеет ли её инструмент?
В карте для картинок к каждой странице добавлены теги из пространства image: адрес файла, подпись, иногда лицензия. Разбор такую карту прочитает, но покажет только адреса страниц, колонок с картинками в таблице нет. Собрать карту с картинками инструмент не умеет: сборка выдаёт обычный urlset. Если картинки важны для трафика, эту карту отдаёт движок или модуль.
Что делать с адресами, которые отвечают редиректом или 404?
Их надо убрать. В карте живут только конечные страницы, которые отвечают кодом 200 и открыты для индексации. Робот, который раз за разом приходит на 301 или 404, тратит на сайт меньше сил, чем мог бы. Разберите карту, прогоните список через проверку заголовков сервера, вычеркните мусор и соберите файл заново.
Проверяет ли инструмент, что адреса в карте рабочие?
Нет. Он разбирает текст, который вы вставили, и по ссылкам не ходит. Всё считается в браузере, запросов к чужим сайтам не уходит. Для проверки ответов возьмите отдельный инструмент: выгрузите список адресов кнопкой и прогоните его через проверку HTTP-статусов.
Нужна ли карта сайта маленькому сайту?
На двадцати-тридцати страницах с нормальным меню робот и так всё найдёт. Карта начинает помогать, когда страниц сотни, они лежат глубоко или на них почти нет внутренних ссылок: карточки товаров, архив блога, посадочные под регионы. Вреда от карты нет, поэтому проще её сделать, чем спорить.
Чем sitemap.xml отличается от карты сайта для людей?
Это разные вещи с похожим названием. sitemap.xml читают роботы, человек в нём ничего не поймёт. HTML-карта, обычная страница со ссылками на разделы, делается для посетителей и заодно раздаёт внутренние ссылки. Одна другую не заменяет, но на маленьком сайте польза от HTML-карты обычно выше.
Похожие инструменты
Генератор robots.txt онлайн — создать файл за пару минут
Пресет под вашу CMS, свои строки Disallow и адрес карты сайта. Готовый текст robots.txt копируется одной кнопкой и кладётся в корень.
Пересечение и разность списков онлайн — сравнить два или три списка
Показывает, чем два или три списка отличаются: общее, уникальное и объединение без повторов. Кнопку нажимать не нужно.
Проверка заголовков сервера онлайн — HTTP-статус и редиректы
Показывает сырой ответ сервера по любому адресу: статус, цепочку переходов и заголовки целиком. Без регистрации, адреса не сохраняются.