Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Когда речь заходит о подборе ключевых фраз под Google (гугл вордстат подбор ключевых слов), любому SEO-шнику вспоминается рутинный марафон, от которого начинает сводить челюсти. Если у вас всего пара-тройка запросов — элементарно. Но попробуйте-ка провернуть то же самое с десятками тысяч ключей! Попытки использовать привычные инструменты с прошлой эпохи вызывают головокружение и заставляют тянуться к старым «костылям». Наступила новая реальность: сейчас связка Key Collector + Google Ads + прокси уже давно не тянет. Встречайте эру, где без прямого доступа к официальному API и без такого инструмента, как планировщик ключевых слов Google, жизнь становится мрачнее, а бездействие — непозволительной роскошью.

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Но не будем паниковать: в этой куче проблем спрятан бриллиант. Если вы готовы немного “похакать” код, сделать пару ритуальных танцев вокруг консоли и слегка поиграть в бюрократию с Google, вы, скорее всего, откроете себе двери в Keyword Planner API (планировщик ключевых слов Google Ads). Поверьте, это клад для SEO.. В этой статье пошагово разберём, как, вместо диких расходов на внешние сервисы (300 баксов в месяц, серьёзно?!), соорудить свой собственный инструмент на Google Ads API. Таким образом, у вас появится собственный аналог гугл вордстат, идеально подходящий для подбор ключевых слов гугл напрямую через планировщик ключевых слов google ads. Пристегните ремни!

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Для чего нужен парсер Google и планировщик ключевых слов Google (Keyword Planner API) для эффективного подбора ключевых слов гугл

Давайте посмотрим в корень: когда надо собрать солидное семантическое ядро под Google, эффективно осуществить гугл вордстат подбор ключевых слов и оптимизировать расходы, двух десятков запросов уже явно мало. Старый добрый Key Collector сдаёт позиции, а российские аккаунты в Google притесняются по всем фронтам. В итоге приходим к платным аналогам вроде Keyword Tool, которые требуют солидных вложений, и при этом не дают упрощённого пути к подбору ключевых слов гугл, как это могло бы дать решение формата гугл вордстат — просто переливают те же данные Google Ads через свой фронт-энд. а хочется-то работать напрямую, без посредников, ведь прямого аналога «гугл вордстат» не существует, и планировщик ключевых слов Google остаётся единственным официальным инструментом., и автоматизировать всё по собственным канонам.

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

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

Keyword Tool просит денег, Ubersuggest — его «облегчённая» версия без API и серьёзных возможностей. Итого: если мечтаете о полной автономии и тонкой настройке логики сбора данных, пора обращаться к Google Ads API (планировщик ключевых слов Google) и напрямую получать данные для подбора ключевых слов гугл, минуя платные сторонние сервисы с их ценником в сотни долларов.

Где начинается парсинг Гугл: разработческий токен и рекламный аккаунт

Хотите собрать 40 тысяч ключей? Звучит эпично. Но начнём с бумажной волокиты. Без неё никуда — это своеобразный порог посвящения. Вам нужен Google Ads-аккаунт с реальными расходами на рекламу. Без потраченных средств Планировщик ключевых слов закрыт, а значит, чтобы использовать планировщик ключевых слов google (он же планировщик ключевых слов google ads) как основу для своего парсера, придётся инвестировать в рекламу. Как завести такой аккаунт — решать вам, тут мы не будем углубляться.

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Создайте управляющий аккаунт (MCC) и зайдите в его настройки. Слева вы найдёте «Центр API» и заветный Developer token (токен разработчика). Записывайте его — ещё пригодится.

Google Cloud Console: Client ID и Client Secret - без чего парсинг поисковой выдачи не состоится

Следующий шаг — авторизация в Google Ads API через OAuth. Для этого нужно зарегистрировать приложение в Google Cloud Console.

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений
  • Авторизуйтесь в Google Cloud Console под тем же аккаунтом, что и в Ads.
  • Создайте проект (название — на ваш вкус).
  • Зайдите в меню слева: APIs & Services → Library.
  • Найдите Google Ads API и включите его.
  • Перейдите в APIs & Services → Credentials.
  • Создайте учётные данные: «Create Credentials» → «OAuth client ID».
  • Тип приложения: Web application.
  • Придумайте название, например, "my-ads-api".

В Authorized redirect URIs добавьте (Два адреса почти одинаковы, но у меня сработал вариант со слэшем. Подстрахуйтесь — вдруг у вас иначе):

http://localhost:8081/ http://localhost:8081

Жмите «Create». Получите Client ID и Client Secret.

Получение refresh_token для Google Ads

Чтобы ваш скрипт имел постоянный доступ к Ads, нужен refresh_token — долговременный пропуск, позволяющий обновлять сессионные ключи без танцев с бубном при каждом запуске. Этот шаг может занять больше всего времени, но оно того стоит.

Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Установите библиотеку:

pip install google-ads

Создайте файл get_refresh_token.py со следующим кодом:

import logging from google.auth.transport.requests import Request from google_auth_oauthlib.flow import InstalledAppFlow logging.basicConfig(level=logging.DEBUG) def generate_refresh_token(client_id, client_secret): scopes = ["https://www.googleapis.com/auth/adwords"] flow = InstalledAppFlow.from_client_config( { "installed": { "client_id": client_id, "client_secret": client_secret, "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "redirect_uris": ["http://localhost:8081/"] } }, scopes, ) auth_url, state = flow.authorization_url( access_type="offline", include_granted_scopes="true", prompt='consent' ) print(f"URL для авторизации: {auth_url}") credentials = flow.run_local_server(port=8081, state=state) print(f"Ваш Refresh Token: {credentials.refresh_token}") generate_refresh_token( "Client ID", "Client secret" )

Подставьте свои Client ID и Client Secret. Запускайте:

python get_refresh_token.py

Откройте ссылку в браузере, выберите нужный рекламный аккаунт и по завершении в консоли получите refresh_token. Сохраните его.

Конфигурационный файл google-ads.yaml

Теперь соберём все данные в один файл:

developer_token: "ВАШ_ТОКЕН_РАЗРАБОТЧИКА" client_id: "ВАШ_CLIENT_ID" client_secret: "ВАШ_CLIENT_SECRET" refresh_token: "ВАШ_REFRESH_TOKEN" login_customer_id: "ВАШ_МЕНЕДЖЕРСКИЙ_ID"

Важно: login_customer_id — должен совпадать с ID, который будет использоваться в основном скрипте (о нем ниже), то есть, либо везде ID рекламного аккаунта, либо управляющего MCC. При несовпадении ID вы не получите доступ к нужным данным.

Повышаем уровень доступа для реального парсинга Гугл

Даже собрав всё, вы получите «Test Access» к API, который не даёт нужных данных по ключевикам. Чтобы перейти на Basic Access, в управляющем аккаунте зайдите в «Центр API» и подайте заявку. Опишите, что собираете семантику для собственных нужд. Обычно одобряют за несколько дней, если ваш аккаунт активен.

Ещё одно «но»: ваш MCC-аккаунт должен быть связан с рекламным. Если ещё нет, свяжите их, иначе доступ к API так и останется призрачным.

Практика: сбор семантики Google через Python-скрипт

Ниже — код, который выберет ключи через Keyword Planner API. Логика проста: скрипт читает ключевики из CSV, делит их по порциям (по 10 штук), запрашивает статистику (среднемесячный трафик, конкуренция, ставки и похожие ключи) и сохраняет результаты обратно в CSV.

import csv import time from google.ads.googleads.client import GoogleAdsClient def chunk_list(lst, n): for i in range(0, len(lst), n): yield lst[i:i+n] def main(): client = GoogleAdsClient.load_from_storage("google-ads.yaml") keyword_plan_idea_service = client.get_service("KeywordPlanIdeaService") customer_id = "ВАШ_CUSTOMER_ID" keywords = [] with open("keywords.csv", "r", encoding="utf-8") as f: reader = csv.DictReader(f) for row in reader: kw = row['keyword'].strip() if kw: keywords.append(kw) chunk_size = 10 with open("keyword_data.csv", "w", newline="", encoding="utf-8") as outfile: writer = csv.writer(outfile) writer.writerow([ "keyword", "avg_monthly_searches", "competition", "low_top_of_page_bid_micros", "high_top_of_page_bid_micros" ]) for chunk in chunk_list(keywords, chunk_size): request = client.get_type("GenerateKeywordIdeasRequest") request.customer_id = customer_id # Настраиваем гео и язык request.geo_target_constants.append("geoTargetConstants/2250") # Франция request.language = "languageConstants/1010" # Французский request.keyword_seed.keywords.extend(chunk) response = keyword_plan_idea_service.generate_keyword_ideas(request=request) for idea in response.results: text = idea.text metrics = idea.keyword_idea_metrics avg_searches = metrics.avg_monthly_searches if metrics.avg_monthly_searches else 0 competition = metrics.competition.name if metrics.competition else "UNSPECIFIED" low_bid = metrics.low_top_of_page_bid_micros if metrics.low_top_of_page_bid_micros else 0 high_bid = metrics.high_top_of_page_bid_micros if metrics.high_top_of_page_bid_micros else 0 writer.writerow([ text, avg_searches, competition, low_bid, high_bid ]) time.sleep(1) if __name__ == "__main__": main()

Как это работает

  • В keywords.csv укажите столбец keyword с вашими фразами.
  • Скрипт читает файл, делит ключи по 10, формирует запросы к API.
  • Для каждого пакета запросов указываются гео и язык. При необходимости замените 2250 на свой регион и 1010 на нужный язык.
  • Результат с расширенными идеями ключевиков будет в keyword_data.csv, включающем показатели трафика, конкуренцию и диапазон ставок.
  • time.sleep(1) — пауза, чтобы не упереться в лимиты и не превратиться в жертву строгого Google.

Как определить нужный язык для парсинга Гугл и ГЕО?

Вот небольшая хитрость: официальных таблиц с ID языков в открытом доступе найти сложно. Но можно получить их через API:

from google.ads.googleads.client import GoogleAdsClient def main(): client = GoogleAdsClient.load_from_storage("google-ads.yaml") ga_service = client.get_service("GoogleAdsService") customer_id = "ВАШ_CUSTOMER_ID" query = """ SELECT language_constant.id, language_constant.code, language_constant.name, language_constant.targetable FROM language_constant ORDER BY language_constant.id """ response = ga_service.search_stream(customer_id=customer_id, query=query) for batch in response: for row in batch.results: language = row.language_constant print(f"ID: {language.id}, Code: {language.code}, Name: {language.name}, Targetable: {language.targetable}") if __name__ == "__main__": main()

Запустите этот скрипт, и он выведет список языков, их ID, коды, названия и параметр targetable.

Для поиска нужной страны или конкретного региона используйте файл с этой страницы - https://developers.google.com/google-ads/api/data/geotargets. Тут все в кучу, поэтому данных много, ну и обращайте внимание на свежесть файла, периодически выходят обновления.

Лимиты и уровни доступа

  • На базовом уровне у вас 15 тысяч запросов в день. Каждый запрос — до 10 ключевиков, т.е. можно обработать до 150 тысяч запросов за сутки.
  • На стандартном уровне лимиты расширяются до бесконечности. Но чтобы туда пробиться, придётся доказать Google серьёзность ваших намерений: не перегружать API, тратить больше денег на рекламу и, в целом, играть по правилам.
Подбор ключевых слов гугл и парсинг поисковой выдачи: подробный гайд как сделать парсер Гугл без вложений

Вместо итога

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

Надеюсь, этот гид спасёт ваши нервы, а планировщик ключевых слов Google и Google Ads API помогут вывести подбор ключевых слов гугл на новый уровень. При соблюдении лимитов, аккуратной конфигурации и терпении всё получится. Удачных экспериментов, коллеги, и пусть статистика поискового трафика всегда будет на вашей стороне!

реклама
разместить
Начать дискуссию