SEO
Aleksandr Chepukaytis

Как проиндексировать сайт в Google и повысить видимость: опыт использования Google Indexing API с примерами

История о том, как мы за 10 дней проиндексировали сайт в Google (более 30 000 страниц), используя Google Indexing API.

Конечно, мы работали с индексацией на протяжении всего 2021 года, но стандартные работы по перелинковке с расчетом весов, внедрению плитки тегов и дополнительных сквозных блоков не принесли ожидаемого эффекта. К счастью, мы нашли решение, которым делимся в этой статье.

Этот материал будет полезен как крупным, так и небольшим сайтам.

В качестве примера мы рассматриваем сайт интернет-магазина.

Что мы знаем об индексации в Google?

Когда речь идет об индексации в поисковой системе (Гугл), то прежде всего мы имеем в виду краулинговый бюджет. Это определение включает в себя множество факторов, которые влияют на индексацию: перелинковка, размер сайта, частота сканирования сайта роботами поисковой системы, настроенные заголовки и многое другое. Более подробно ознакомиться с понятием “краулинговый бюджет” можно по ссылке.

Таким образом, чтобы поисковик начал индексировать, а в последствии и ранжировать сайт, необходимо выполнить программу-минимум:

  • качественный контент и его оптимизация (метатеги);
  • микроразметка;
  • настроенные заголовки Last-Modified;
  • блоки перелинковки, например плитка тегов в категориях и товарах;
  • стабильный сервер-хостинг сайта;
  • коммерческие факторы (YMYL);
  • корректные robots.txt и карты сайта.

Выполнив все работы из этого списка примерно к середине 2021 года (ориентировочно июнь-июль), мы начали ждать положительных результатов в ПС Google.

Рисунок 1. Мем “Ждун”.

Здесь следует отдельно поблагодарить команду маркетолога, а именно: программиста, дизайнера и контент-менеджера, за то что помогли быстро осуществить все внедрения по сайту. Это дало проекту колоссальный рост видимости в Яндекс, а нам - возможность построить дальнейшие гипотезы для продвижения в Гугл.

Результаты продвижения в Яндекс представлены на рисунке 0. Если интересно, что конкретно мы делали и внедряли на проекте, то пишите в комментариях, и мы разберем это в отдельной статье.

Рисунок 0. Результаты внедрений на сайте и видимость проекта по ПС Яндекс.

К сожалению, у нас не сохранился скриншот, который бы отражал индексацию сайта в Google на протяжении всего 2021 года. Но по рисунку 2 очевидно, что все проведенные работы никак не повлияли на количество проиндексированных страниц. Мы находились на стабильном плато.

Рисунок 2. Скриншот из Google Search Console, данные об индексации сайта.

Да, на рисунке 2 в индексе находится около 10 000 страниц, но общий размер сайта составляет 70 000 URL-адресов. Ориентировочно в середине сентября (спустя 1-2 месяца после внедрения всех работ) мы начали искать новые решения, как проиндексировать сайт. Из известных способов оставалось:

  • Ссылки (биржи, pbn сети и др.).
  • WebMaster Bot (если кто-то его не знает, то вот ссылка: @wmaster_bot).
  • Разработка более продвинутых и сложных способов перелинковки, например “Ловец ботов” от Дмитрия Шахова.

Все эти способы достойны того, чтобы их прорабатывать. Но мы, оптимизаторы, всегда должны искать более экономичные и быстрые варианты выполнения сложных задач.

Google Indexing API: разбираемся, что это и как им пользоваться

Google Indexing API - инструмент, позволяющий отправлять в Google ссылки на новые и обновленные посадочные, а также удалять старые и ненужные мусорные ссылки. Лимит на отправку данных в Google - 200 ссылок в сутки.

В начале сентября, перед отпуском, мне прислали ссылку на пост https://t.me/drkwng/17 про индексатор Гугл, написанный на Python. Я добросовестно отложил этот пост в список To Do, что стало первой существенной ошибкой. Тем не менее, не погружаясь в тему более подробно, мы написали программисту ТЗ на индексатор. Но существенный недостаток индексатора - это лимит в 200 запросов. Вспоминаем, что нам необходимо проиндексировать более 60 000 ссылок, делим указанное количество на 200 запросов (в день), в итоге получаем 300 дней (почти год без двух месяцев).

Кстати, индексатор от drkwngdata был значительно улучшен. Чтобы им воспользоваться, не нужно быть программистом. Достаточно прочитать пост https://t.me/drkwng/57 и файл readme.txt по ссылке на скачивание Python-скрипта.

Подготовительные работы

Прежде чем перейти к разбору индексатора от Google, требовалось определить, какие ссылки проиндексированы, а какие - нет. В распоряжении у SEO-специалистов для решения такой задачи могут быть как готовые сервисы и программы, так и индивидуальные решения (разработки). В нашем случае использовался парсер в связке с XEvil и фермой мобильных прокси. Далее расскажу по пунктам, какой из инструментов за что отвечает:

  • A-Parser - отправляет запросы к реальной выдаче Гугл. Обрабатывает ответы и сохраняет все данные. Иными словами, это гибкий парсер, который можно настроить под любые цели.
  • XEvil - компонент от Хрумера (ссылочные прогоны по форумам и профилям), который позволяет разгадывать капчи (продается в комплексе с Хрумером).
  • Ферма мобильных прокси - модемы с симками, через которые осуществлялись запросы к реальной выдаче, чтобы получать как можно меньше капч.

На этом этапе мы получили таблицу со списком ссылок, которые необходимо проиндексировать (везде, где количество страниц в индексе равно 0). Пример на рисунке 3.

Рисунок 3. Скриншот результатов работы A-Parser в формате: “URL;Кол-во страниц в индексе”.

Более подробно ознакомиться с возможностями парсера можно по ссылке.

Аналитика

Для детального разбора индексатора (Google Indexing API) необходимо настроить аналитику по следующим пунктам:

  • какие ссылки и когда были отправлены;
  • парсинг и визуализация логов сервера.

Отслеживание отправленных ссылок

Для чего это нужно? Чтобы контролировать даты отправки URL-адресов в индексатор и сопоставлять их с датой обхода googlebot. С этой целью мы подготовили дашборд в Google Data Studio. Его внешний вид представлен на рисунке 4.

Рисунок 4. Визуализация отправленных URL-адресов в индексатор Гугл по дате.

Пояснения к рисунку 4: мы отправляли по 200 ссылок, но благодаря графику выяснилось, что отправляли по несколько дублей (по 400 запросов). А Гугл более 200 запросов не обрабатывал. Ошибку устранили ближе к началу января.

Парсинг и визуализация логов сервера

Общий дашборд в Google Data Studio состоит из 4 вкладок:

  • Indexing API - рассмотрели выше;
  • боты Яндекс и Гугл - для анализа посещаемости сайта роботами ПС;
  • фильтр URL - подача на вход отправленных ссылок и отслеживание их посещаемости роботами;
  • не боты - классический дашборд для анализа всех кодов ответа сервера, например 400-х, 500-х и других, критически важных для нас.

В аналитике мы столкнулись с единственным минусом. Так как парсинг и визуализацию логов сервера я дописал только 18 января 2022 года, а индексатор направлял по 200 ссылок еще с начала ноября 2021 года, то не было возможности оценить посещаемость сайта гуглботом до указанной даты (2022 года). В качестве альтернативного источника для анализа статистики сканирования googlebot мы использовали Google Search Console.

Пример дашборда Google Data Studio для НЕ ботов приведен на рисунке 5.

Рисунок 5. Скриншот визуализации кодов ответа сервера без учета ботов ПС и сервисных ботов (предполагается, что это только реальные пользователи).

Индексатор и обход ограничений Google

На этом этапе стояла задача: обойти ограничения в 200 запросов на отправку ссылок и отправлять в день как можно больше данных в индексатор Гугл. Идея была простой - попробовать зарегистрировать еще один аккаунт Google и добавить JSON-ключи от него в Python-скрипт. Поэтому мы перешли к следующим задачам:

  • Регистрация нового аккаунта Google.
  • Написание нового скрипта на Python под цикличную обработку всех выданных аккаунтов Google.

Если у вас есть вопросы по первому пункту, то можете написать их в telegram или связаться с нами через контакты, указанные на сайте.

Разберем подробнее второй пункт. Индексатор от drkwngdata, написанный для людей, под нашу задачу не подходил, поскольку нам требовалось проверить возможность отправки данных в индексатор с разных аккаунтов Google. Поэтому мы взяли за основу код на GitHub и переписали его под себя. Измененный код доступен по ссылке (предупреждаю, что я не программист, поэтому много “костылей”).

Для работы этого кода в корне скрипта нужно создать папку “json_keys” и поместить в нее все json-файлы ключей, которые вам выдал Гугл (итоговый алгоритм действий вы найдете в конце статьи). Если у вас есть вопросы по запуску скрипта, то обязательно посмотрите наше практическое видео, которое мы специально записали в качестве дополнения к исследованию по Google Indexing API:

Написав скрипт и зарегистрировав два тестовых аккаунта Google, я отправил данные в API. Было удивительно наблюдать, как лимит в 200 строк увеличился до 400. Экстренно поставил контент-менеджеру задачу на регистрацию аккаунтов Гугл, и на следующий день вместо 400 ссылок мы отправили 4000+ шт. Спустя несколько дней у нас в распоряжении было 32 аккаунта Google, и мы начали отправлять в индексатор по 6000+ ссылок в день. Для наглядности привожу скриншот отправленных ссылок в индексатор из Google Data Studio.

Рисунок 6. До 14 января отправляем по 200 ссылок. 15-17 января - тестовые дни написания скрипта, с 18 января отправляем по 6300 ссылок и более.

Как отреагировала Search Console? Статистика сканирования представлена на рисунке 7.

Рисунок 7. Сканирование сайта гуглботом увеличилось в 2-2,5 раза.

В дополнение скриншот из парсера логов сервера, который практически коррелирует с данными на рисунке 8.

Рисунок 8. Визуализация запросов к серверу (парсер логов) от googlebot.

Пояснения к рисункам 7 и 8: с 18 по 23 января мы отправили в Google indexing API тестовую партию ссылок (около 35 000 штук), а далее взяли паузу, чтобы подумать и обработать данные. Как мы видим, после завершения отправки данных googlebot перестал так часто посещать сайт (провал на 24-25 января, рис.№7 и №8).

Итоговый алгоритм действий вы найдете в конце статьи. А пока перейдем к результатам, хотя часть из них вы уже и видели на скриншотах выше.

Результаты

Ожидаемые результаты - это, конечно же, рост числа ссылок в индексе. Удивительно, но большая часть из первой (тестовой) партии ссылок была проиндексирована. Рост индексации с 23000 до 47000 ссылок - более чем в два раза за 10 дней (с 19 по 29 января, согласно рисунку 9).

Рисунок 9. Скриншот из Google Search Console.

Теперь об очевидном. В аналитике и оценке эффективности нашей работы мы используем платформу SEOWORK. В частности, благодаря отслеживанию большого пула ключей, мы обнаружили рост видимости в Гугл (рисунок 10).

Рисунок 10. Улучшение видимости в Гугл для ТОП-100, ТОП-10 и ТОП-5 ключей.

Итоговый алгоритм действий

  • Регистрируем новый аккаунт в Гугл.
  • Переходим сюда: https://console.cloud.google.com/apis/enableflow?apiid=indexing.googleapis.com&;credential=client_key&hl=ru&pli=1 и активируем API.
Рисунок 11. Активация API
Рисунок 12. Создание сервисного аккаунта.
  • Заполняем все данные, выбираем роль “Owner”. Нажимаем done.
Рисунок 13. Заполнение данных.
  • Кликаем по созданному аккаунту (на почту).
Рисунок 14. Выбираем “на почту”.
  • Переходим в раздел Keys и добавляем новый ключ. Выбираем формат Json и сохраняем файл ключа в папку скрипта json_keys.
Рисунок 15. Сохраняем файл ключа в папку скрипта json_keys.
  • В Google Search Console переходим в “Настройки” - “Пользователи и разрешения” - “Добавляем сервисную почту созданного аккаунта”.

Надеемся, что этот метод поможет тем, у кого также были проблемы с индексацией в Гугл, и кто ранее не использовал Google Indexing API. Будем рады ответить на ваши вопросы.

Автор: Дмитрий Федосеев (Ant-team.ru).

P.s. Подписывайтесь на наш телеграм-канал t.me/seoantteam, чтобы первыми узнавать о выходе новых материалов.

0
56 комментариев
Написать комментарий...
Павел Seoremica

Каеф! Спасибо за интересный практический метод. Нужно тестить.

P.S сколько же постов полезных пропускаем каждый день из-за переизбытка информации вокруг )

Ответить
Развернуть ветку
1 комментарий
Социалистический франт

Хорош!

Ответить
Развернуть ветку
Леся Казакова

за видео пояснение отдельный лайк

Ответить
Развернуть ветку
Екатерина Полякова

Очень полезно!

Ответить
Развернуть ветку
Drkwng

Спасибо за упоминания канала💘

Ответить
Развернуть ветку
Виктория Алексеева

Александр, я правильно поняла, что один сервисный аккаунт - один реальный аккаунт Гугла?

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

все верно

Ответить
Развернуть ветку
2 комментария
Michael

Давно пользуюсь отправкой по апи и недавно заметил, что стало давать отправлять более 200 ссылок в день. Раньше после 200 ссылок был ответ сервера 429, а сейчас нет. Думал ограничение сняли, а по факту нет. В ЛК видно, что обрабатываются все так же только 200.

P.S. У кого-то получилось повысить квоту? Там через ЛК можно запрос подать...

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Нет,у нас не получалось, собственно мы обошли это ограничение искусственно

Ответить
Развернуть ветку
1 комментарий
Пелин Константин

за чёткую статью с видео отдельный лайк

Ответить
Развернуть ветку
Валерия Матросова

Дима и тебе спасибо за работу! Тонкие материи...

Ответить
Развернуть ветку
Viacheslav Varenia

Что могу сказать. Все по делу. Вы большие молодцы. Спасибо.

Ответить
Развернуть ветку
Kolotun Bobo

Статья - бонба! Спасибо большое!
На некоторых проектах Google реально приходится ждать по полгода. А на некоторых краулинговый бюджет вырастает быстро. По какому алгоритму гугл выставляет лимиты - не очень понятно. Причем, есть проекты, у которых краулинговый бюджет даже выше, чем общее количество страниц. Например, страниц - 3000, а бюджет - 3500.

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Теперь можно не ждать) способ рабочий, рады что помогли!

Ответить
Развернуть ветку
Пелин Константин

за чёткую статью с видео отдельный лайк

Ответить
Развернуть ветку
Пелин Константин

за чёткую статью с видео отдельный лайк

Ответить
Развернуть ветку
Аккаунт заморожен

Комментарий недоступен

Ответить
Развернуть ветку
Виктор Петров

Нейросеть - не человек. Она оценивает плотность ключей, контекстные векторы, ПФ, ссылочное, какие-то метрики доверия и авторитетности.
Не мудрено, что топы занимают одинаковые сайты - рерайты одной статьи или совершенно идентичные по всем параметрам категории товарного каталога.

Ответить
Развернуть ветку
2 комментария
Aleksandr Chepukaytis
Автор

Конечно раз на раз не приходится с выдачей, но качество контента мы определяем количеством трудозатрат. Обратите внимание, если мы говорим о контенте, то это не только тексты. Например, в случае с данным интернет-магазином это были и различные мануалы по выбору товаров, уходу за ними, их использованию. Множество различных фич, которые отвечают за доверие к контенту, как например публичные данные о статистике заказов в магазине, динамике цен в товарных карточках, это верхушка айзберга. Мы не зря написали - "Если интересно, что конкретно мы делали и внедряли на проекте, то пишите в комментариях, и мы разберем это в отдельной статье."

Ответить
Развернуть ветку
Артур Мельников

У меня совершенно обратная история. Сайт отлично индексируется в Google, но яндекс его не воспринимает. Есть ли у яндекса подобные способы?
заранее извиняюсь, если вопрос тупой

Ответить
Развернуть ветку
SEO-Шмео

Я пробовал норм 10 000 страниц в день можно отправлять.
https://serpstat.com/ru/indexnow/

Ответить
Развернуть ветку
2 комментария
Aleksandr Chepukaytis
Автор

Обычно у нас совсем нет проблем с индексацией в Яндексе. Напишите в личку сайт, посмотрим, в чем может быть дело

Ответить
Развернуть ветку
Ghiyd jddf

Какая доменная зона?

Ответить
Развернуть ветку
Leonid Smith

Надо также оптимизировать в Яндексе.
https://webmaster.yandex.ru/

Ответить
Развернуть ветку
SEO Exim

А что это за скрин из консоли у вас? Какой раздел и вкладка?
https://leonardo.osnova.io/be6bb1fb-5972-5185-b2e4-90c2246c1b78/-/preview/700/-/format/webp/

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Индекс - Покрытие - Страницы без ошибок

Ответить
Развернуть ветку
Александр Черныш

Статья гуд, но блин, сколько же заморочки чтобы просто проиндексировать, 100500 настроек + работа программиста, ужас, это сео должно нести золотые яйца чтоб аж так над этим заморачиваться.

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Современное качественное seo не может быть дешевым.

Ответить
Развернуть ветку
Виктор Петров

Ну есть такие темы, где одна продажа - и год можно не работать. Ну или разово сотня продаж - и можно делать новый сайт, раз уж старый РКН забанил.

Ответить
Развернуть ветку
1 комментарий
Давид Миронов

Давно читаю vc и не особо любитель комментировать, здесь спасибо в первую очередь нужно сказать уке (drkwing data), благодаря его идее вы уже разработали свою и проверили ее, так что ничего особенного не увидел. Наняли программиста, дописали пару строк, вот и весь кейс

Ответить
Развернуть ветку
Социалистический франт

Его идее? Он придумал сделать апи к индексатору? )

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Google Indexing API - инструмент, который доступен каждому. drkwingdata и вправду является тем, кто подал идею индексатора(мы упоминаем в статье несколько раз), но его код нам совершенно не подходил, поэтому мы переписали его. В дополнение была проделана масшатабная работа по парсингу логов сервера и их последующей визуализации. Предполагаю, что статью прочитали невнимательно и много важных моментов пропустили.

Ответить
Развернуть ветку
Марат Тимурович

Интересно спасибо

Ответить
Развернуть ветку
В А

Я здесь напишу, там ранее парень тоже писал по этой теме. В общем в заголовке у вас не должно быть эмоджиков, в url тоже. Плагин их не обрабатывает, заменяет дефисом. В итоге гугл получает страницу как 404. Не попадитесь на это, многие страницы могут быть выкинуты из поиска если будете использовать плагин и урл с эмоджи.

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Спасибо

Ответить
Развернуть ветку
Leonid Smith

Спасибо, полезно.

Ответить
Развернуть ветку
В А

чуть подробнее:
есть такой запрос
Miruna Lazya🔔Deschideti portile mari🔔 COLINDE DE CRACIUN ROMANESTI🎄🌟 Versuri он есть в поиске гугла на 1м месте/Румыния

плагин не понимает эмоджи и переделывает его в

https://versuri.topklip.net/romania/miruna-lazea%f0%9f%94%94deschideti-portile-mari%f0%9f%94%94-colinde-de-craciun-romanesti%f0%9f%8e%84%f0%9f%8c%9f-versuri/

и он открывается в браузере, но в json другая картина

10:24:17 update: https://versuri.topklip.net/romania/miruna-lazea%f0%9f%94%94deschideti-portile-mari%f0%9f%94%94-colinde-de-craciun-romanesti%f0%9f%8e%84%f0%9f%8c%9f-versuri/
{
"urlNotificationMetadata": {
"url": "https://versuri.topklip.net/romania/miruna-lazeadeschideti-portile-mari-colinde-de-craciun-romanesti-versuri/";,
"latestUpdate": {
"notifyTime": "2022-02-16T08:24:15.350292355Z",
"type": "URL_UPDATED",
"url": "https://versuri.topklip.net/romania/miruna-lazeadeschideti-portile-mari-colinde-de-craciun-romanesti-versuri/";
}
}
}
—--—--—--—--—--—--—--—--—--—--—--—--—--—--
10:23:54 getstatus: https://versuri.topklip.net/romania/miruna-lazea%f0%9f%94%94deschideti-portile-mari%f0%9f%94%94-colinde-de-craciun-romanesti%f0%9f%8e%84%f0%9f%8c%9f-versuri/
{
"error": {
"code": 404,
"message": "Requested entity was not found.",
"errors": [
{
"message": "Requested entity was not found.",
"domain": "global",
"reason": "notFound"
}
],
"status": "NOT_FOUND"
}
}

то есть мы видим, что 10,23,45 урл не был найден (хотя он и рабочий, но так как емоджи были заменены на код, то он уже не он)

далее я обновляю его через плагин, отправляю на индексацию и получаю новый урл уже без эмождиков, а с дифисами. получаю новый урл, перехожу по новой ссылке и получаю 404.

плгин 301 Redirects подтверждает это, что пошли ошибки при обращении к определённым урл, котоые отдают 404

Ответить
Развернуть ветку
Валентина Герасимова

Приветствую! Так самый главный вопрос, как Вы с разных аккаунтов гугла добавляли ссылки с одного домена?

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Здравствуйте, спасибо за вопрос. Все аккаунты нужно добавить в GSC в качестве владельцев.

Ответить
Развернуть ветку
Валентина Герасимова

Просто добавлять 200url и node.js справляется!

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Кто на что учился, как говорится)

Ответить
Развернуть ветку
Дмитрий Горшков

супер! спасибр) Не увидел ответа на комментарий, тоже очень интересует. Нужно ли добавлять индексируемый сайт в гугл консоль? И что делать если сайтов сотни?

Ответить
Развернуть ветку
Aleksandr Chepukaytis
Автор

Индексируемый сайт нужно обязательно добавлять в GSC и выдавать доступы на все аккаунты. Просто так проиндексировать левый сайт через указанный способ не получится

Ответить
Развернуть ветку
2 комментария
Наталья

Добрый день.
Пытаюсь запустить страницы на индексацию описанным в статье методом - не получается.
После команды python main.py
командная строка выдает "Отправлено на индексацию: 0 шт."
Хотя в .csv добавила 40 адресов. Сервисный аккаунт создан и добавлен в GSC с правами владельца. JSON ключ лежит в нужной папочке.
В чем может быть причина? Куда смотреть?

Ответить
Развернуть ветку
Viktoryia Moroz

Аналогичная проблема, после запуска выдает "Отправлено на индексацию: 0 шт.", есть решение?

Ответить
Развернуть ветку
Читать все 56 комментариев
null