Перевод статьи Дэвида Соттимано.
На странице поддержки Google Indexing API мы видим, что этот инструмент «можно использовать только для сканирования страниц с объявлениями о вакансиях или структурированными данными в реальном времени». Я, конечно же, решил проверить все самостоятельно и узнал, что можно успешно сканировать и обычные страницы, причем это делается практически мгновенно.
Сколько заняло сканирование моих страниц? Не более 1 минуты, и это не шутка.
После того как вы проверите связь с API, Google предоставит 2 разных пользовательских агента в течение 2 минут (согласно моим 3 испытаниям):
1. Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.96 Mobile Safari/537.36 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)
2. Mozilla/5.0 (compatible; Googlebot/2.1; +https://www.google.com/bot.html)
Как проводить тестирование (настройка Node JS)
Прошу прощения за отсутствие полного руководства по пакетной отправке, все основные действия описаны ниже:
Перейдите на страницу https://developers.google.com/search/apis/indexing-api/v3/prereqs и убедитесь, что вы четко следуете инструкциям.
Когда вы назначаете роль своему сервисному аккаунту, просто выберите «владелец» (owner) и запишите адрес электронной почты участника, который вы позже будете использовать в Google Search Console.
Рисунок 1. Изменение роли
Кроме того, когда вы добавляете это электронное письмо «участника» в Search Console, убедитесь, что вы добавляете его как подтвержденный владелец (owner), а не как пользователь (user).
Рисунок 2. Добавление участника
Для настройки Node JS используйте этот адаптированный код (ниже). Код, приведенный в кратком руководстве, у меня не работал. В частности, мне пришлось импортировать модуль Googleapis как объект, где я обнаружил ошибку в литерале.
let request = require(«request»);
let {google} = require(«googleapis»);
let key = require(«./service_account.json»);
const jwtClient = new google.auth.JWT(
key.client_email,
null,
key.private_key,
[«https://www.googleapis.com/auth/indexing»],
null
);
jwtClient.authorize(function (err, tokens) {
if (err) {
console.log(err);
return;
}
let options = {
url: «https://indexing.googleapis.com/v3/urlNotifications:publish»,
method: «POST»,
// Your options, which must include the Content-Type and auth headers
headers: {
«Content-Type»: «application/json»
},
auth: {
«bearer»: tokens.access_token
},
// Define contents here. The structure of the content is described in the next step.
json: {
«url»: «https://davidsottimano.com/doesnotexist»,
«type»: «URL_UPDATED»
},
}
request(options, function (error, response, body) {
// Handle the response
console.log(body);
});
});
Успешный ответ
Рисунок 3. Успешный ответ
Что вы можете сделать с Indexing API?
С помощью Indexing API вы можете сделать несколько полезных вещей (https://developers.google.com/search/apis/indexing-api/v3/using-api), вот что говорит Google:
1. Обновление URL: сообщите Google о новом URL-адресе для сканирования или о том, что контент по ранее отправленному URL-адресу был обновлен.
2. Удаление URL: после удаления страницы со своего сервера сообщите об этом в Google, чтобы мы могли удалить страницу из индекса и не пытались просканировать URL повторно.
3. Получение статуса уведомления: проверьте, когда Google в последний раз получал уведомления каждого типа для данного URL.
4. Отправка пакетных запросов индексирования: уменьшите количество HTTP-соединений, которые должен выполнить ваш клиент, объединив до 100 запросов в один HTTP-запрос.
Вещи, которые действительно стоит проверить:
1. Уменьшение времени задержки с помощью Indexing API для hreflang, директив, перенаправлений.
2. Использование его для утвержденных издателей новостей Google с целью узнать, можно ли вернуть новые и обновленные статьи в карусель избранных историй.
3. Пакетные запросы — очевидно, что они позволят вам выполнить пакетную отправку 100 запросов. Однако я не вижу вреда в использовании отдельных HTTP-запросов, если вы не рассылаете спам.
Примечание и ограничения
Не знаю, какие планы у Google, но я надеюсь, что он оставит нам этот чудесный инструмент. В этом случае я буду просто счастлив полностью отказаться от XML-файлов Sitemap. Разве это не здорово?
Конечно, предусмотрены ограничения: 600 запросов в минуту и 200 запросов в рамках одного проекта в день, и это бесплатно!
Автор: Дэвид Соттимано
Ссылка на оригинал: https://davidsottimano.com/playing-with-googles-new-indexing-api-and-getting-pages-crawled-immediately/
P.s. Возможно, вам будет интересно почитать недавнюю статью Сайруса Шепарда о способах ускорения индексации и ранжирования нового контента, среди которых он упоминает также API-интерфейсы Google.
Подписывайтесь на наш телеграм-канал t.me/seoantteam, чтобы первыми узнавать о выходе новых материалов. Мы публикуем только полезный контент на тему SEO.