Пошаговая инструкция по настройке Google Indexing API

 — по оценке 96 пользователей
20 апреля, 17:50
Сергей Просветов
Сергей Просветов
20 апреля, 17:50
59479
0
Google
Содержание
Что такое Google Indexing API?
Когда может потребоваться Indexing API?
Что необходимо для освоения Indexing API?
Пошаговая инструкция настройки Google Indexing API
1. Создание сервисного аккаунта и JSON-ключа
Шаг 1: Создание сервисного аккаунта
Шаг 2: Назначение роли для аккаунта
Шаг 3. Создание нового JSON-ключа
Шаг 4. Скачивание JSON-ключа
2. Настройка сканирующего скрипта
3. Связь скрипта с панелью Google Search Console
4. Установка библиотеки
5. Запуск скрипта
Какие могут возникнуть ошибки?
Кейсы
Сайт услуг
Интернет-магазин
Размер текста:

Что такое Google Indexing API?

Indexing API — это инструмент поисковой системы Google, который позволяет владельцу сайта напрямую отправлять уведомление поисковому роботу о добавлении или удалении страниц со своего ресурса.

Когда может потребоваться Indexing API?

При продвижении сайта SEO-специалист может столкнуться с проблемой, когда новые продвигаемые страницы, создаваемые на сайте, по тем или иным причинам продолжительное время не попадают в индекс поисковой системы Google.

Важно: В настоящее время Indexing API способен обрабатывать страницы, содержащие структурированные данные типов JobPosting или BroadcastEvent, встроенные в объект VideoObject. Для сайтов с большим количеством таких страниц, имеющих краткосрочный жизненный цикл, этот инструмент гарантирует отображение актуальной информации в поисковых результатах, поскольку обновления могут передаваться индивидуально.

Подробно: Общие сведения об Indexing API.

Что необходимо для освоения Indexing API?

  1. Подключить Indexing API к панели Google Search Console.
  2. Создать новый JSON-ключ.
  3. Установить и настроить скрипт node.js.
  4. Запустить скрипт.

Все настройки потребуется выполнить один раз, затем вы просто обновляете файл urls.txt и запускаете скрипт для отправки новых страниц.

Пошаговая инструкция настройки Google Indexing API

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

1. Создание сервисного аккаунта и JSON-ключа

На первом этапе необходимо настроить доступы в консоли Indexing API. Для этого вам нужно перейти на страницу Google Cloud Platform и создать сервисный аккаунт.

Шаг 1: Создание сервисного аккаунта

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

Переходим к следующему этапу — перед вами должны быть доступна следующая информация (название проекта другое):

Здесь необходимо ввести еще одно произвольное название латинскими буквами и назначить роль:

Шаг 2: Назначение роли для аккаунта

Назначаем роль нового аккаунта: «Owner» («Владелец»):

Пункт: «Предоставление пользователям доступа к сервисному аккаунту» оставляем без изменений. Нажимаем на «Done» («Готово»).

Шаг 3. Создание нового JSON-ключа

Теперь нам нужно кликнуть на «Действия», справа от созданного аккаунта:

И выбрать: «Manage keys» («Управление ключами»).

В открывшемся окне кликаем на: «ADD KEY» («Добавить ключ») и выбираем пункт: «Create new key» («Создать новый ключ»):

В новом окне выбираем пункт «JSON» и жмем на «CREATE» («Создать»):

Шаг 4. Скачивание JSON-ключа

Скачиваете ключ себе на компьютер.

2. Настройка сканирующего скрипта

Скачанный на компьютер ключ необходим для дальнейшего запуска сканирующего скрипта (скачиваем скрип Github).

Скрипт будет доступен на ПК в виде папки с несколькими файлами, один из которых: «service_account.json»:

Теперь нам нужно заменить содержимое файла «service_account.json» на содержимое скачанного ранее JSON-ключа. После проведения процедуры по замене содержимого файла он должен выглядеть примерно так:

3. Связь скрипта с панелью Google Search Console

Чтобы привязать скрипт к панели Google Search Console продвигаемого сайта, необходимо назначить полным владельцем client_email из JSON-ключа:

Назначить владельца ресурса можно через настройки панели Google Search Console:

  • Настройки —> Пользователи и разрешения —> Управление владельцами ресурса.

Когда вы убедились, что в списке пользователей присутствует сервисный аккаунт (client_email) и он имеет статус владельца сайта, можете переходить к подключению и использованию Index API на продвигаемом проекте.

Для этого необходимо перейти в Google Cloud Platform, выбрать сервисный аккаунт и включить API:

Скрипт готов к использованию!

4. Установка библиотеки

На этом этапе нам необходимо настроить файл node.js и установить библиотеку, которая будет принимать такие запросы. Скачать файл node.js можно здесь.

После установки библиотеки переходим в папку со скриптом, запускаем «PowerShell» («Терминал») и выполняем следующие команды:

  • npm install requests
  • npm audit fix
  • npm audit fix --force

После выполнения команд в папке со скриптом должна появится новая папка node_modules:

Это говорит о том, что библиотека установлена и готова к работе.

5. Запуск скрипта

Для запуска скрипта необходимо:

  1. В папке скрипта (который был скачан из Github) найти файл urls.txt.
  2. Открываете его и добавляете нужные URL-адреса (не более 100 URL за одну итерацию).
  3. Вызываете «Терминал» (нажатием клавишы Shift + правой кнопки мышки в окне скрипта) и переходите в папку. Чтобы узнать, где вы находитесь прямо сейчас, нужно ввести команду [ls]:

Если нам требуется перейти в папку «Dropbox» (см. скриншот выше), необходимо ввести команду [cd]:

  • cd Dropbox

Команда вводится без использования лишних символов с точным сохранением регистра папки.

Необязательно вводить полное название папки, достаточно ввести 1-2 первые буквы и нажать клавишу [Tab].

Когда вы перешли в нужную папку, где располагается скрипт, необходимо ввести команду [node] с указанием целевого файла:

  • node index.js

Через несколько секунд после ввода должен появиться код «200 ОК»:

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

Какие могут возникнуть ошибки?

  1. Одна из распространенных ошибок, которую вы можете увидеть на последнем этапе — это код «403» вместо «200 ОК». Это значит, что в панели Google Search Console сервисному аккаунту был предоставлен не доступ владельца. Вам нужно вернутся на несколько шагов назад и убедиться, что вы все сделали именно так, как указано в инструкции:
  2. Если после установки и запуска скрипта все работает корректно, но по той или иной причине вам потребовалось изменить расположение папки со скриптом на своем компьютере, он уже не запустится. Вам необходимо повторно пройти процедуру установки библиотеки (войти в папку со скриптом через «Терминал» и выполнить все необходимые команды еще раз).

    Перед настройкой скрипта рекомендуется сразу продумать расположение папки на своем компьютере.

Кейсы

Сайт услуг

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

Ситуация кардинально изменилась, когда мы провели работы по настройке и подключению Indexing API. Буквально в 2 итерации нам удалось добавить в индекс все важные для достижения KPI по проекту страницы:

Интернет-магазин

Сервис определенно будет полезен и при продвижении интернет-магазина. В отличие от сайтов услуг с небольшим количеством страниц, здесь потребуется чуть больше времени, с учетом ограничения количества URL для отправки (100 за итерацию, 200 в сутки).

На одном из проектов меньше чем за месяц нам удалось значительно повысить полноту индексации в Google — с 330 до 1040 URL:

Сергей Просветов
Подписывайтесь
на рассылку
Я согласен на обработку
персональных данных

Подписаться


Понравилась статья?
 — по оценке 96 пользователей
20 апреля, 17:50
Оставить комментарий

Введено символов: 0 / 1200

выдает ошибку module not found на этапе запуска скрипта. Модули устанавливал как в шаге 4. Вобще файлы библиотеки node и файлы скрипта должны быть в разных папках? В чем может быть проблема с этой ошибкой ? как проверить и устранить?
Ответить

Введено символов: 0 / 1200

«На данный момент Indexing API поддерживает сканирование страниц со структурированными данными типов JobPosting или BroadcastEvent, которые встроены в объект VideoObject» -- пишет Гугл документация. Т.е. обычную статью или карточку товара отправить по АПИ нельзя?
Ответить

Введено символов: 0 / 1200

прикольно, я 49.996й и 50.002й читатетель сегодня
Ответить

Введено символов: 0 / 1200

google indexing api больше не работает, гугл официально ещё не отключил, но на новые домены с апи бот не идёт, можете не тестить, не тратить своё время в пустую.
Ответить

Введено символов: 0 / 1200

Всё сделал чётко по инструкции, но ошибка вот такая, что делать ? PS C:\Users\User\Downloads\google-indexing-api-bulk-master> node index.js node:internal/modules/cjs/loader:1146 throw err; ^ Error: Cannot find module 'request' Require stack: - C:\Users\User\Downloads\google-indexing-api-bulk-master\index.js at Module._resolveFilename (node:internal/modules/cjs/loader:1143:15) at Module._load (node:internal/modules/cjs/loader:984:27) at Module.require (node:internal/modules/cjs/loader:1231:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (C:\Users\User\Downloads\google-indexing-api-bulk-master\index.js:2:15) at Module._compile (node:internal/modules/cjs/loader:1369:14) at Module._extensions..js (node:internal/modules/cjs/loader:1427:10) at Module.load (node:internal/modules/cjs/loader:1206:32) at Module._load (node:internal/modules/cjs/loader:1022:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12) { code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\Users\\User\\Downloads\\google-indexing-api-bulk-master\\index.js' ] }
Ответить

Введено символов: 0 / 1200

PS C:\Users\User\Downloads\google-indexing-api-bulk-master> npm install requests >> npm audit fix >> npm audit fix --force npm WARN old lockfile npm WARN old lockfile The package-lock.json file was created with an old version of npm, npm WARN old lockfile so supplemental metadata must be fetched from the registry. npm WARN old lockfile npm WARN old lockfile This is a one-time fix-up, please be patient... npm WARN old lockfile npm ERR! code EPERM npm ERR! syscall mkdir npm ERR! path C:\Users\User\Downloads\google-indexing-api-bulk-master\node_modules\.corepack-Sc8Srekx npm ERR! errno -4048 npm ERR! Error: EPERM: operation not permitted, mkdir 'C:\Users\User\Downloads\google-indexing-api-bulk-master\node_modules\.corepack-Sc8Srekx' npm ERR! [Error: EPERM: operation not permitted, mkdir 'C:\Users\User\Downloads\google-indexing-api-bulk-master\node_modules\.corepack-Sc8Srekx'] { npm ERR! errno: -4048, npm ERR! code: 'EPERM', npm ERR! syscall: 'mkdir', npm ERR! path: 'C:\\Users\\User\\Downloads\\google-indexing-api-bulk-master\\node_modules\\.corepack-Sc8Srekx' npm ERR! } npm ERR! npm ERR! The operation was rejected by your operating system. npm ERR! It's possible that the file
Ответить

Введено символов: 0 / 1200

Ещё раз сделал, вот так показывает PS C:\google-indexing-api-bulk-master> node index.js node:internal/modules/cjs/loader:1146 throw err; ^ Error: Cannot find module 'request' Require stack: - C:\google-indexing-api-bulk-master\index.js at Module._resolveFilename (node:internal/modules/cjs/loader:1143:15) at Module._load (node:internal/modules/cjs/loader:984:27) at Module.require (node:internal/modules/cjs/loader:1231:19) at require (node:internal/modules/helpers:179:18) at Object.<anonymous> (C:\google-indexing-api-bulk-master\index.js:2:15) at Module._compile (node:internal/modules/cjs/loader:1369:14) at Module._extensions..js (node:internal/modules/cjs/loader:1427:10) at Module.load (node:internal/modules/cjs/loader:1206:32) at Module._load (node:internal/modules/cjs/loader:1022:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:135:12) { code: 'MODULE_NOT_FOUND', requireStack: [ 'C:\\google-indexing-api-bulk-master\\index.js' ] }
Ответить

Введено символов: 0 / 1200

А если в urls.txt ссылки добавил абсолютно нормальные, но при индексации (node index.js) по всем ссылкам выдаёт 200 ОК, но при этом у всех УРЛов, кроме последнего в конце добавляет \r. Вроде и УРЛ неправильный , но при этом 200 ОК. Это норм или можно как-то исправить?
Ответить

Введено символов: 0 / 1200

Норм. Исправлять не надо.
Ответить

Введено символов: 0 / 1200

Добрый вечер. Спасибо за отличный гайд. Правильно ли я понимаю, что в панели Google Search у меня, после того как Google проиндексирует страницы - уменьшится список не проиндексирумых УРЛов? Т.е. вопрос - как я пойму что все сработало) если по простому говорить) Заранее спасибо за ответ
Ответить

Введено символов: 0 / 1200

Привет. При условии, что поисковику уже известны эти страницы сайта и по какой-то причине он не добавил их в индекс. Поймете по изменению количества проиндексированных страниц в Google Search Console (примеры, как это выглядит, приведены в блоке: Кейсы). Только учтите, что данные там обновляются с небольшой задержкой.
Ответить

Введено символов: 0 / 1200

Благодарю за ответ)
Ответить

Введено символов: 0 / 1200

Здравствуйте Сергей, после запуска скрипта выдает такую ошибку - https://skrinshoter.ru/sMid792RRAu?a Подскажите пожалуйста, что может быть ?
Ответить

Введено символов: 0 / 1200

Сложно сказать однозначно, в чем может быть причина. В синтаксической ошибке может быть виновата опечатка или некорректные символы в списке URL. Возможно, стоит начать сначала и более внимательно пройти каждый шаг + убедиться в корректность подаваемых на индексацию URL-адресов.
Ответить

Введено символов: 0 / 1200

Есть ли возможность через апи наоборот удалить из индекса массово мусорные страницы?
Ответить

Введено символов: 0 / 1200

на моменте = После установки библиотеки переходим в папку со скриптом, запускаем «PowerShell» («Терминал») и выполняем следующие команды: не понятно как на macos запустить PowerShell? я писал слово PowerShell в терминале выдает ошибку, я писал команды что вы дали там непонятно что выдавало но в папке ничего не появилось... очень непонятно что делать пробовал гуглить все сложно. как запустить PowerShell вы не показали скринами почему?
Ответить

Введено символов: 0 / 1200

1. На Windows — терминал можно запустить, находясь в папке со скриптом: удерживая клавишу Shift, кликнуть правой кнопкой мыши на пустую область папки и выбрать строку «Открыть окно PowerShell здесь». Важный нюанс в том, что терминал открывается уже с указанием пути конкретной папки! 2. В Mac OS — в окне Finder открыть папку «Программы/Утилиты» и выбрать приложение «Терминал». Единственное, что далее необходимо будет указать путь целевой папки со скриптом, прежде чем вводить команды.
Ответить

Введено символов: 0 / 1200

2. Можно ли настроить запуск скрипта по cron?
Ответить

Введено символов: 0 / 1200

Наши достижения

Входим в число лучших компаний России в сферах интернет-рекламы и разработки сайтов по результатам самых авторитетных рейтингов

Победитель в номинации «SEO под ключ» по итогам WORKSPACE DIGITAL AWARDS 2023
Лидер SEO-рейтинга среди сайтов SEO-агентств по итогам Optimization 2018
Optimization 2018
Рейтинг с самой прозрачной методологией SEO глазами клиентов 2023
SEO глазами клиентов 2023
Рейтинг известности SEO-компаний 2020 по версии SEO-news
SEO-news
Другие статьи автора
Вернуться в раздел
Другие статьи рубрики
Вернуться в раздел
  • Добавляем микроразметку через GTM
  • Скрытие ссылок с помощью AJAX
  • Как сделать 301-редирект?
  • SEO и разработка сайта
  • Типы апдейтов поисковых систем
  • Как закрыть сайт от индексации?
Оставьте заявку

Нужна помощь с сайтом? Заполните форму, и наши менеджеры проконсультируют вас уже сегодня!

* — Поля, обязательные к заполнению.
Получайте полезные письма
Присылаем экспертные исследования и кейсы по SEO и интернет-маркетингу,
а также спецпредложения только для подписчиков!


Оставьте ваш e-mail:*
Я согласен на обработку
персональных данных

Принципиально новые условия сотрудничества в SEO — зарабатываем только вместе!

Уникальный тариф «Оборот», где доход агентства больше не зависит от визитов и позиций вашего сайта, а привязан исключительно к росту оборота вашей компании.

Тариф, который хотели сделать многие, но реализовали только мы.

К тарифу «Оборот»