Google Autocomplete (Google Offer) — это система автозаполнения поисковых запросов, которая отображает предложения в режиме реального времени. Несмотря на отсутствие официальной документации, его поведение достаточно стабильно и широко используется в SEO, анализе поисковых намерений и семантическом анализе.
В этой статье рассматриваются параметры запроса, форматы ответов и практические примеры работы с конечной точкой:
Содержание
- 1 Базовый запрос API
- 2 Настройка клиента и формат ответа
- 3 Пример ответа в формате JSON
- 4 География и язык
- 5 Источник индекса (ds)
- 6 Индексы расширения (ключевой метод)
- 7 Пример кода (Python)
- 8 Огромная коллекция подсказок (a–z, 0–9).
- 9 Пример кода (JavaScript)
- 10 JSONP (обратный вызов)
- 11 Ограничения и практические рекомендации
- 12 Основные приложения
Базовый запрос API
https://suggestqueries.google.com/complete/search Метод: ПОЛУЧИТЬ
Все параметры передаются через строку запроса. Для проверки вы можете скопировать запрос, вставить его в окно браузера и нажать ENTER.
Вам необходимо загрузить текстовый файл с ответом в формате JSON. Вы можете вставить его в любой онлайн-сервис JSON Viewer и посмотреть запросы:

Необходимые настройки API
| Параметр | Описание |
|---|---|
| д | Строка поиска |
| клиент | Тип клиента (влияет на формат ответа) |
Настройка клиента и формат ответа
| клиент | Формат ответа |
|---|---|
| хром | JSON |
| Firefox | JSON |
| панель инструментов | XML |
На практике мы чаще всего используем client=chrome. Но в то же время при использовании client=firefox Показатели могут незначительно отличаться (до 30%). Поэтому для получения оптимальных результатов комбинируйте запросы.
Пример ответа в формате JSON
[
"seo",
[
"seo это",
"seo оптимизация",
"seo специалист"
],
[],
{
"google:suggesttype": ["QUERY", "QUERY", "QUERY"],
"google:suggestrelevance": [1250, 620, 580],
"google:verbatimrelevance": 1300
}
] Структура ответа
-
Первоначальный запрос
-
Индексная таблица
-
Зарезервированное поле (часто пустое)
-
Метаданные подсказки
Тип предложения в 99% запросов — QUERY, но есть и другие варианты:
-
НАВИГАЦИЯ: Прямая ссылка на сайт (URL). Вместо того, чтобы предлагать поисковый запрос, API предлагает вам перейти непосредственно к определенному ресурсу (например, когда вы вводите «facebook», первой подсказкой может быть прямой адрес сайта).
-
ENTITY: всплывающая подсказка, связанная с конкретным объектом в Google Knowledge Graph (люди, места, организации). Часто сопровождается дополнительными метаданными, такими как краткое описание или изображение.
-
КАЛЬКУЛЯТОР: Математический ответ. Если запрос похож на расчет (например «5+5»), API может вернуть готовый результат.
-
ПЕРСОНАЛИЗИРОВАННЫЙ: предложение, основанное на истории поиска или личной активности пользователя.
-
ХВОСТ: так называемые «хвостовые» сигналы, которые дополняют текущий ввод пользователя, предполагая логическое завершение предложения.
Но предложенная релевантность — это релевантность с точки зрения Google. Параметр является абстрактным; чем выше значение, тем более релевантным является запрос. Для жизненно важных брендовых запросов, если результат около 1250-1300, это почти релевантный ключ. Но не стоит слишком на это полагаться, Google часто допускает ошибки, особенно с омонимами.
Текстуальная значимость еще более интересна.
Например, если вы написали «seo» и релевантность текста 1300, а индекс «seo this» — 1250, то нажатие Enter просто отправит вас на страницу результатов поиска по запросу «seo». Если бы все было наоборот (подсказка 1300 и ввод 1250), браузер мог бы более агрессивно предлагать автозаполнение прямо в адресной строке.
На практике я встречал значения, отличные от 1300 и 1250, поэтому не стоит жестко привязываться к этим параметрам.
География и язык
Все запросы основаны на местоположении, поэтому, если вы не укажете страну, запрос будет учитывать ваш IP. Если вам нужны данные для определенного языка или страны, вы можете передать параметры в запросе на получение.
| Параметр | Цель | Пример |
|---|---|---|
| гл | Язык интерфейса | эн, де, фр. |
| гл | Страна (ИСО-2) | Мы, д, это |
?client=chrome&q=seo&hl=en&gl=US На практике не стоит слишком полагаться на указание страны и языка, поскольку Google иногда смешивает ключи из других стран или языков. Это вызвано использованием VPN.
Источник индекса (ds)
Получить консультацию можно не только в Google Поиске, но и в Youtube, Продуктах и Новостях Google.
| дс | Источник |
|---|---|
| (пустой) | Регулярный поиск |
| да | Ютуб |
| дерьмо | Товары/Покупки |
| н | Новости |
?client=chrome&q=seo&ds=yt Индексы расширения (ключевой метод)
Чтобы получить больше подсказок, используйте следующую технику:
<ключ> + " " + символ Примеры:
seo a
seo b
seo c
seo 0
seo 1 Такой подход позволяет эффективно собирать длинные запросы и определять цели поиска. На практике для высокочастотных запросов этот метод позволяет получить в 5–9 раз больше ключей. Этот метод можно применить для каждого полученного ключа.
Пример кода (Python)
import requests
def google_suggest(query, hl="en", gl="US", ds=None):
url = "
params = {
"client": "chrome",
"q": query,
"hl": hl,
"gl": gl
}
if ds:
params["ds"] = ds
response = requests.get(url, params=params, timeout=5)
response.raise_for_status()
return response.json()
data = google_suggest("seo")
print(data[1]) Огромная коллекция подсказок (a–z, 0–9).
import string
import time
def expand_keywords(base):
results = {}
for ch in string.ascii_lowercase + string.digits:
q = f"{base} {ch}"
try:
data = google_suggest(q)
results[q] = data[1]
except Exception:
pass
time.sleep(3.2)
return results
keywords = expand_keywords("seo") На практике будьте осторожны с этим методом, так как можно получить бан по IP от Google.
Пример кода (JavaScript)
async function googleSuggest(query, hl="en", gl="US", ds = null) {
const params = new URLSearchParams({
client: 'chrome',
q: query,
hl,
gl
});
if (ds) params.set('ds', ds);
const url=" + params;
const response = await fetch(url);
const text = await response.text();
return JSON.parse(text);
}
googleSuggest('seo').then(data => {
console.log(data[1]);
}); JSONP (обратный вызов)
Чтобы обойти CORS, вы можете использовать опцию callback:
?callback=myFunction Ответ будет заключен в вызов функции, который необходимо очистить перед анализом JSON.
В общем, если в браузере не работают запросы API-подсказок, возможно, проблема в CORS. Вы можете проверить это в Chrome, щелкнув правой кнопкой мыши в окне и выбрав «Показать код»; консоль покажет красные ошибки CORS.
Ограничения и практические рекомендации
-
API неофициальный, это хак, можно отключить в любой момент
-
Блокировка возможна при высокой частоте запросов — используйте таймауты в своих скриптах.
-
Не завязывайтесь на жёсткую структуру ответа, так как иногда ловил очень удивительные результаты
Основные приложения
-
SEO-инструменты
-
Анализ поисковых намерений
-
Коллекция семантики длинного хвоста
-
SEO на YouTube
-
Анализ спроса
На практике я использую его для поиска скрытых намерений и расширения запросов сущностей. Основная проблема с поисковыми предложениями Google — это проблема омонимов; при массовом анализе они попадают в семантическое ядро. Однако эту проблему легко решить с помощью кластеризации или менее затратного метода: проверки косинусной близости с использованием BERT.

