SEO-скрипты на Python с помощью нейросети
Публичные сервисы не закрывают все задачи, у них лимиты, и непонятно, как они считают. Раньше свой инструмент мог написать только программист. Сейчас его пишет нейросеть, а SEO-специалист объясняет логику. Главное — правильно ставить задачу и не потерять работающую версию.
Свои скрипты нужны, когда сервисы не закрывают задачу, не прозрачны или упираются в лимиты. Ставьте стабильную (не самую новую) версию Python и VS Code с расширениями от проверенных разработчиков. Давайте ИИ одну задачу за раз, примеры входа и выхода, просите проверить промпт. Делайте бэкап каждой рабочей версии. Удаляйте лишние комментарии — экономия токенов.
Зачем свои инструменты
- У каждого специалиста своё видение задачи, сервисы делают «как у всех».
- Не знаешь, как устроен чужой алгоритм, — не можешь доверять результату на 100%.
- Лимиты и платные тарифы.
- Свой инструмент бесплатный и делает ровно то, что нужно.
Настройка среды
- Скачайте Python с официального сайта — стабильную версию, обычно предпоследнюю: самая свежая может не дружить с библиотеками.
- Установите VS Code — редактор кода.
- Проверьте в VS Code, какой интерпретатор Python выбран.
- Ставьте расширения (Python, ИИ-ассистенты) только от проверенных разработчиков — смотрите, кто автор.
Как ставить задачу нейросети
10 готовых постановок задачи для разных проектов
Ниже 10 постановок по этому чек-листу: одна задача, вход, выход и исключения — для разных типов сайтов.
Скопируйте постановку, замените файлы и столбцы на свои и добавьте в конце «проверь промпт — что неоднозначно?». Каждую рабочую версию скрипта сохраняйте в бэкап.
- 1Интернет-магазинSEO-специалист каталогаЗадача: найти товары без H1 или с H1, совпадающим с названием категории.
Вход: CSV из краулера (url, h1, category).
Выход: CSV (url, h1, problem).
Исключить: страницы пагинации с ?page=.Почему работает. Одна проверка, четкие столбцы на входе и выходе — модель не додумывает лишнего. - 2Сайт услугвладелец небольшой компанииЗадача: очистить список запросов от мусора по стоп-словам.
Вход: keys.txt (запрос;частота) и stop.txt.
Выход: clean.csv и removed.csv с причиной удаления.
Исключить: стоп-слово внутри другого слова не считать совпадением.Почему работает. Граничный случай с частью слова — типичная ошибка, которую стоит оговорить заранее. - 3Новостное медиаSEO-редакторЗадача: найти статьи, у которых трафик упал более чем на N% за 3 месяца.
Вход: выгрузка Метрики (url, месяц, визиты).
Выход: таблица url, визиты было/стало, падение %.
Исключить: статьи младше 6 месяцев.Почему работает. Список кандидатов на обновление собирается за минуты, а порог задаете вы сами. - 4Агрегатор недвижимостиSEO-команда крупного сайтаЗадача: найти страницы из sitemap, которых нет в выгрузке проиндексированных.
Вход: sitemap.xml и indexed.csv из Вебмастера.
Выход: not_indexed.csv (url, раздел).
Исключить: URL с параметрами utm.Почему работает. Сравнение двух списков — простая задача, но на больших сайтах вручную ее не сделать. - 5B2B-производствомаркетологЗадача: сгруппировать запросы по совпадению URL в топ-10.
Вход: serp.csv (запрос, позиция, url).
Выход: clusters.csv (кластер, запросы), порог — от 4 общих URL.
Исключить: агрегаторы и маркетплейсы при подсчете совпадений.Почему работает. Порог и исключения в промпте делают кластеризацию прозрачной — вы знаете, как она считает. - 6Блог онлайн-школыконтент-менеджерЗадача: найти статьи без ссылок на страницы курсов.
Вход: HTML-файлы статей в папке и courses.txt со списком URL курсов.
Выход: CSV (статья, есть ли ссылка на курс).
Исключить: ссылки в меню и подвале.Почему работает. Перелинковка блога на продукт — частая дыра; скрипт находит ее без ручного просмотра. - 7Локальный бизнес с филиаламимаркетолог сетиЗадача: проверить, что на каждой странице филиала есть адрес, телефон и часы работы.
Вход: список URL филиалов.
Выход: таблица url, адрес да/нет, телефон да/нет, часы да/нет.
Исключить: данные из общего подвала сайта.Почему работает. Оговорка про подвал защищает от ложного «все заполнено». - 8Маркетплейс handmadeSEO-специалистЗадача: найти дубли описаний товаров — совпадение текста от 80%.
Вход: products.csv (id, url, description).
Выход: duplicates.csv (url1, url2, сходство %).
Исключить: описания короче 100 символов.Почему работает. Порог сходства и минимальная длина задают критерий, без них модель выберет свой. - 9SaaS-сервиспродуктовый маркетологЗадача: собрать title и description со страниц конкурентов по списку.
Вход: competitors.txt со списком URL.
Выход: CSV (url, title, длина title, description).
Исключить: страницы с ответом не 200 — писать их в отдельный лог.Почему работает. Отдельный лог ошибок не дает сдвинуть столбцы при пропусках в данных. - 10Туристическое агентствовладелец агентстваЗадача: разметить запросы по типу — коммерческий или информационный.
Вход: keys.csv (запрос, частота).
Выход: тот же файл со столбцом type.
Исключить: правила разметки — коммерческие маркеры «цена, купить, тур, путевка»; остальное информационное.Почему работает. Явные правила разметки вместо «определи сам» дают повторяемый результат.
Отладка
- Запускайте старую и новую версии параллельно и сравнивайте результат.
- Ошибку из терминала копируйте прямо в нейросеть: «где ошибка?».
- Обязательно перепроверяйте логику: у источников данных бывают пропуски, из-за которых сдвигаются столбцы.
Бэкапы
Нейросеть, добавляя новую функцию, может сломать то, что работало. Сохраняйте копию каждой рабочей версии. Удобно настроить в ИИ-агенте команду «сделай бэкап», которая складывает версии в папку проекта.
Экономия токенов
- Удаляйте комментарии из кода — модели любят ими спамить, а это лишние токены.
- Отдавайте модели только тот файл, который дорабатываете.
- Мощная модель решает быстрее, но для простых задач хватает средних.
Частые вопросы
Сколько времени уходит на свой инструмент?
Простой скрипт — вечер. Полноценный инструмент для семантики с множеством функций — около месяца доработок.
Можно ли так править сайт?
Если не понимаете, что меняете, — не правьте боевой сайт через ИИ. Работайте на тестовой копии.
Нейросеть пишет код. Думать о задаче всё ещё вам.