Сначала не тащите FAQ «как есть». У большинства сайтов ответы разбиты на аккордеоны, вкладки и скрытые блоки: для парсинга нужен не текст страницы, а состояние DOM после раскрытия. Снимайте не только вопрос и ответ, но и URL, категорию, заголовок секции, чтобы потом не гадать, откуда взялся кусок текста.
Дальше чистите структуру:
— убирайте повторяющиеся фразы вроде «свяжитесь с нами» и «читайте также»;
— режьте навигацию, футеры, cookies-баннеры;
— сохраняйте списки и шаги отдельно, а не слепляйте в один абзац.
Если у ответа есть вложенные пункты, лучше хранить их в JSON, а в базу знаний уже отдавать нормализованный текст.
Не смешивайте разные типы вопросов в одну запись. Как правило, FAQ полезнее раскладывать по шаблону: проблема → короткий ответ → детали → ссылка на действие. Так проще искать дубли, обновлять материал и строить автоподсказки для поддержки.
Перед загрузкой проверьте два фильтра: дубликаты по смыслу и устаревшие формулировки. Если на сайте ответ меняется от раздела к разделу, оставляйте один источник истины и помечайте остальные как алиасы.
Лучший парсинг FAQ — это не вытащить больше текста, а собрать чистые карточки, которые можно переиспользовать без ручной правки.
Web Automation
@automationwebx
Как парсить FAQ с сайта так, чтобы база знаний не превратилась в мусор
Этот пост опубликован в Telegram-канале Web Automation. Подписаться можно по ссылке: @automationwebx.