используйте в Wordstat И Яндекс Директ
Динамический коллтрекинг
Стоимость
8 800 555 55 22
Google Телепорт: полное руководство
Google в 2017 году разработал сервис, который способен решить задачу по переносу или дубляжу готовой рекламной кампании из одного аккаунта в другой практически в автоматическом режиме. Телепорт поможет перенести рекламную кампанию из Яндекс.Директ в AdWords за 15-30 минут и 6 простых шагов…
Основы таргетированной рекламы
Таргетированная реклама в умелых руках является мощным и действенным инструментом привлечения клиентов. Поэтому в этой статье мы решили познакомить вас с механизмами ее работы
Оглавление
Виртуальная АТС
- Голосовое меню (IVR)
- Запись разговоров
- Конференцсвязь
- Многоканальные номера
- Поддержка
- Подключение
- Статистика и мониторинг
Коллтрекинг
- О продукте
- Как подключить
- Решения
Возможности- Стоимость
- Сквозная аналитика
- Мультиканальная аналитика
Контакт-центр
- Исходящий обзвон
- Оценка эффективности работы
- Поддержка
- Подключение
- Управление клиентским сервисом
Решения
- IP-Телефония
- Телефонизация офиса
- Бесплатный вызов 8-800
- Для стартапов
- Диспетчеризация ЖКХ ТСЖ и УК
Бизнес-кейсы
Партнерам
Поддержка
О компании
Почему MANGO OFFICE
Наша команда
Наши достижения
Карьера
Пресс-центр
Блог «Бизнес-рецепты»
Мероприятия
Наши клиенты
Отзывы
статистика ключевых слов, проверка частотностей поисковых запросов 🚀
Яндекс Вордстат: статистика ключевых слов, проверка частотностей поисковых запросов 🚀один
два
три
четыре
пять
4. 3 (18)
Инструмент показывает количество обращений запросов к поисковой системе за последний месяц. Можно проверять как базовую частоту, подразумевающая все словоформы и варианты запроса, так и точную, показывающая частоту запроса в том виде, в котором он был введен.
Остались вопросы? Обращайтесь!
Задать вопрос
Или позвоните нам
Что думают наши клиенты
Александр Трачум Основатель агентства по продвижению сайтов Seodev.by
Серпхант собрал в себе все инструменты, которые нужны SEO специалисту: анализ контента, проверка позиций, анализ конкурентов и многое другое. С помощью данного сервиса можно забыть о том, что такое ручной труд в работе специалиста по продвижению сайтов.
Марк Автор блога по SEO-оптимизации znet.ru
Пользуюсь проверкой индексации, снятием позиций и некоторыми другими функциями сервиса. Мало есть бесплатных инструментов, которые позволяют массово парсить данные Google, а вкупе с понятным и современным дизайном это делает Serphunt действительно востребованным в повседневной работе
Артур Чахалян SEO-оптимизатор
Очень удобно, что большой объем данных видно сразу в одном месте: страницы, ключи, позиции, тошнотность, биграммы, оценки по главреду, объем текста и даже трафик для каждой статьи за день и месяц! При чем все эти данные формируются автоматически. Достаточно указать url статей (или просто установить плагин WP) и можно получить все данные в пару кликов.
Юрий Гришаев Вебмастер
Очень удобный сервис, для информационных сайтов, т.к. в нём можно смотреть все параметры в постатейном срезе. Показываются все важные метрики, с помощью этого не надо никуда лезть, всё в 1-м месте. Сейчас активно им пользуюсь, что говорит о том, что мне всё нравится.
Александр Савин Вебмастер
Серпхант — один из лучших сервисов поисковой аналитики, который вмещает в себя необходимые инструменты для анализа продвигаемого ресурса. Главными его достоинствами являются точная проверка и семантический анализ текста.
Виктор SEO-специалист
Сервис Серпхант имеет понятный интерфейс. Он способен собрать полную информацию о вашем сайте, благодаря богатому SEO функционалу. В сервисе есть бесплатные проверки позиций, с использованием лимитов Яндекс.XML.
Наши инструменты для продвижения сайтов
- Проверка позиций сайта Бесплатный парсер занимаемых позиций в Яндексе и Гугл
- Проверка индексации страниц Контроль за наличием страниц в индексе поисковых систем Яндекс
- Анализ контента Комплексный семантический анализ контента
- Проверка частотности запросов Статистика ввода запросов в поисковых системах
- Анализ страниц конкурентов Глубокий, сравнительный анализ страниц конкурентов из ТОП 10 Яндекса
- Парсинг подсветок Анализ сниппетов в поисковой выдаче
Войти в аккаунт
Восстановление пароля
Загрузка . ..
Получить статистику по клиентам агентства. API Яндекс Директ. Версия 5
Python версии 2 или 3 с использованием JSON с библиотекой запросов
В этом примере показано, как использовать метод AgencyClients.get для получения списка клиентов агентства, а затем выполнять запросы к службе отчетов для получения статистики по аккаунтам рекламодателей для прошедший день. Режим формирования отчета выбирается автоматически. Если отчет добавляется в очередь в автономном режиме, выполняются повторные запросы.
Чтобы использовать пример, укажите во входных данных токен доступа OAuth, который вы получили для представителя агентства.
# --*- кодировка: utf-8 --*- запросы на импорт из запросов.исключения импортировать ConnectionError из времени импортировать сон импортировать json с даты импорта datetime, timedelta из времени импортировать время # Метод правильного анализа строк в кодировке UTF-8 как для Python 3, так и для Python 2 импорт системы если sys. version_info < (3,): защита и(х): пытаться: вернуть x.encode ("utf8") кроме UnicodeDecodeError: вернуть х еще: защита и(х): если isinstance(x, байт): вернуть x.decode('utf8') еще: вернуть х # --- Входные данные --- # Адрес службы AgencyClients для отправки JSON-запросов (с учетом регистра) AgencyClientsURL = 'https://api.direct.yandex.com/json/v5/agencyclients' # Адрес службы отчетов для отправки JSON-запросов (с учетом регистра) ReportsURL = 'https://api.direct.yandex.com/json/v5/reports' # Токен OAuth представителя агентства, от имени которого будут делаться запросы токен = 'ТОКЕН' # --- Подготовка запроса к сервису AgencyClients --- # Создание заголовков HTTP-запроса заголовки = { # Токен OAuth. Слово Bearer должно быть использовано "Авторизация": "Предъявитель" + токен, # Язык ответных сообщений "Accept-Language": "ru" } АгентствоClientsBody = { "метод": "получить", "параметры": { "Критерий выбора": { "Архив": "НЕТ" # Получить только активных клиентов }, «Имена полей»: [«Логин»], "Страница": { "Limit": 10000, # Получить максимум 10000 клиентов в ответе сервера "Смещение": 0 } } } # --- Выполнение запросов к сервису AgencyClients --- # Если параметра LimitedBy нет в ответе, значит # что все клиенты были получены HasAllClientLoginsReceived = Ложь Список клиентов = [] пока не HasAllClientLoginsReceived: ClientsResult = request.post(AgencyClientsURL, json.dumps(AgencyClientsBody), headers=headers).json() для клиента в ClientsResult['result']['Clients']: ClientList.append(Клиент["Логин"]) если ClientsResult['result'].get("LimitedBy", False): AgencyClientsBody['Page']['Offset'] = ClientsResult['result']["LimitedBy"] еще: HasAllClientLoginsReceived = Истина # --- Подготовка запроса к сервису отчетов --- # Создание тела сообщения запроса # Отчет содержит статистику кликов, показов и расходов по всем кампаниям клиента тело = { "параметры": { "Критерий выбора": {}, "Имена полей": [ «Впечатления», "клики", "Расходы" ], "ReportName": u("ACCOUNT_PERFORMANCE"), "ReportType": "ACCOUNT_PERFORMANCE_REPORT", «Датеранжетипе»: «АВТО», "Формат": "TSV", "Включить НДС": "НЕТ", "IncludeDiscount": "НЕТ" } } # Создание выходных данных resultcsv = "Логин;Показы;Клики;Стоимость\n" # Дополнительные заголовки HTTP для запроса отчетов заголовки['skipReportHeader'] = "истина" заголовки['skipColumnHeader'] = "истина" заголовки['skipReportSummary'] = "истина" заголовки['returnMoneyInMicros'] = "ложь" # --- Выполнение запросов к службе отчетов --- для клиента в ClientList: # Добавление HTTP-заголовка "Client-Login" headers['Client-Login'] = Клиент # Кодирование тела сообщения запроса в формате JSON requestBody = json. dumps (тело, отступ = 4) # Запускаем цикл выполнения запроса # Если возвращается код ответа HTTP 200, данные отчета добавляются к выходным данным # Если возвращается код ответа HTTP 201 или 202, выполняются повторные запросы пока верно: пытаться: req = request.post (ReportsURL, requestBody, заголовки = заголовки) req.encoding = 'utf-8' # Обязательная обработка ответа в UTF-8 если req.status_code == 400: print("Неверные параметры запроса, либо очередь запросов заполнена") print("RequestId: {}".format(req.headers.get("RequestId", False))) print("Код JSON для запроса: {}".format(u(body))) print("Код JSON для ответа сервера: \n{}".format(u(req.json()))) ломать Элиф req.status_code == 200: print("Отчет для учетной записи {} успешно создан".format(str(Client))) print("RequestId: {}".format(req.headers.get("RequestId", False))) если затреб. текст != "": tempresult = req.text.split('\t') resultcsv += "{};{};{};{}\n".format(Client, tempresult[0], tempresult[1], str(tempresult[2]).replace('.', ',' )) еще: resultcsv += "{};0;0;0\n".format(Клиент) ломать Элиф req.status_code == 201: print("Отчет для аккаунта {} добавлен в очередь в автономном режиме".format(str(Client))) retryIn = int(req.headers.get("retryIn", 60)) print("Повторно отправить запрос через {} секунд".format(retryIn)) print("RequestId: {}".format(req.headers.get("RequestId", False))) спать (повторить попытку) Элиф req.status_code == 202: print("Отчет будет сформирован в автономном режиме".format(str(Клиент))) retryIn = int(req.headers.get("retryIn", 60)) print("Повторить запрос через {} секунд".format(retryIn)) print("RequestId: {}". format(req.headers.get("RequestId", False))) спать (повторить попытку) Элиф req.status_code == 500: print("Ошибка создания отчета. Пожалуйста, повторите запрос позже.") print("RequestId: {}".format(req.headers.get("RequestId", False))) напечатайте "JSON-код для ответа сервера: \n{}".format(u(req.json()))) ломать Элиф req.status_code == 502: print("Превышен лимит сервера на время создания отчета.") Распечатать( "Попробуйте изменить параметры запроса: уменьшите период времени и объем запрашиваемых данных".) print("Код JSON для запроса: {}".format(body)) print("RequestId: {}".format(req.headers.get("RequestId", False))) print("Код JSON для ответа сервера: \n{}".format(u(req.json()))) ломать еще: print("Непредвиденная ошибка") print("RequestId: {}". format(req.headers.get("RequestId", False))) print("Код JSON для запроса: {}".format(body)) print("Код JSON для ответа сервера: \n{}".format(u(req.json()))) ломать # Обработка ошибок, если не удалось установить соединение с API-сервером Яндекс Директ кроме ConnectionError: # В этом случае мы рекомендуем повторить запрос позже print("Ошибка подключения к серверу API Яндекс Директ") # Принудительный выход из цикла ломать # Если произошла какая-либо другая ошибка кроме: # В этом случае рекомендуем проанализировать действия приложения print("Непредвиденная ошибка") # Принудительный выход из цикла ломать print("Завершено создание отчетов для аккаунтов") # Создание и сохранение файла имя_файла = "AccountsPerfomanceReport_{}.csv".format (str(время())) файл результата = открыть (имя файла, 'w+') файл результатов. написать (результатcsv) файл результатов. close() print("Результаты сохраняются в файл {}".format(filename))
Была ли статья полезна?
Получить статистику за любые даты. API Яндекс Директ. Версия 5
Python версии 2 или 3 с использованием JSON с библиотекой запросов
В этом примере показан запрос к службе отчетов, а также обработка и вывод результатов. Режим формирования отчета выбирается автоматически. Если отчет добавляется в очередь в автономном режиме, выполняются повторные запросы.
Отчет содержит статистику показов, кликов и расходов по всем кампаниям рекламодателя за любой указанный период с группировкой по дате, названию кампании и местоположению пользователя.
Чтобы использовать пример, укажите токен доступа OAuth во входных данных. Для запроса от имени агентства также укажите логин клиента. В теле сообщения запроса укажите дату начала и окончания отчетного периода, а также имя отчета, уникальное среди отчетов рекламодателя.
# --*- кодировка: utf-8 --*- запросы на импорт из запросов. исключения импортировать ConnectionError из времени импортировать сон импортировать json # Метод правильного анализа строк в кодировке UTF-8 как для Python 3, так и для Python 2 импорт системы если sys.version_info < (3,): защита и(х): пытаться: вернуть x.encode ("utf8") кроме UnicodeDecodeError: вернуть х еще: защита и(х): если тип (x) == тип (b''): вернуть x.decode('utf8') еще: вернуть х # --- Входные данные --- # Адрес службы отчетов для отправки JSON-запросов (с учетом регистра) ReportsURL = 'https://api.direct.yandex.com/json/v5/reports' # Токен OAuth пользователя, от имени которого будут выполняться запросы токен = 'ТОКЕН' # Логин клиента рекламного агентства # Обязательный параметр, если запросы делаются от имени рекламного агентства clientLogin = 'CLIENT_LOGIN' # --- Подготовка запроса --- # Создание заголовков HTTP-запроса заголовки = { # Токен OAuth. Слово Bearer должно быть использовано "Авторизация": "Предъявитель" + токен, #Логин клиента рекламного агентства «Клиент-Логин»: clientLogin, # Язык ответных сообщений "Accept-Language": "ru", # Режим формирования отчета "режим обработки": "авто" # Формат денежных значений в отчете # "returnMoneyInMicros": "false", # Не включать строку с названием отчета и диапазоном дат в отчет # "skipReportHeader": "true", # Не включать строку с именами столбцов в отчет # "skipColumnHeader": "true", # Не включать строку с количеством строк статистики в отчет # "skipReportSummary": "true" } # Создание тела сообщения запроса тело = { "параметры": { "Критерий выбора": { "ДатаОт": "START_DATE", "DateTo": "END_DATE" }, "Имена полей": [ "Свидание", "Название кампании", "МестонахождениеПрисутствия", «Впечатления», "клики", "Расходы" ], "ИмяОтчета": u("ИМЯ_ОТЧЕТА"), "ReportType": "CAMPAIGN_PERFORMANCE_REPORT", "DateRangeType": "CUSTOM_DATE", "Формат": "TSV", "Включить НДС": "НЕТ", "IncludeDiscount": "НЕТ" } } # Кодирование тела сообщения запроса в формате JSON тело = json. dumps (тело, отступ = 4) # --- Запуск цикла выполнения запроса --- # Если возвращается HTTP-код 200, выводим содержимое отчета # Если возвращается HTTP-код 201 или 202, отправляем повторные запросы пока верно: пытаться: req = request.post (URL-адрес отчетов, тело, заголовки = заголовки) req.encoding = 'utf-8' # Обязательная обработка ответа в UTF-8 если req.status_code == 400: print("Неверные параметры запроса, либо очередь отчетов заполнена") print("RequestId: {}".format(req.headers.get("RequestId", False))) print("Код JSON для запроса: {}".format(u(body))) print("Код JSON для ответа сервера: \n {}".format(u(req.json()))) ломать Элиф req.status_code == 200: print("Отчет успешно создан") print("RequestId: {}".format(req.headers.get("RequestId", False))) print("Содержание отчета: \n{}".format(u(req.text))) ломать Элиф req.status_code == 201: print("Отчет успешно добавлен в автономную очередь") retryIn = int(req. headers.get("retryIn", 60)) print("Запрос будет отправлен повторно через {} секунд".format(retryIn)) print("RequestId: {}".format(req.headers.get("RequestId", False))) спать (повторить попытку) Элиф req.status_code == 202: print("Отчет создается в автономном режиме") retryIn = int(req.headers.get("retryIn", 60)) print("Запрос будет отправлен повторно через {} секунд".format(retryIn)) print("RequestId: {}".format(req.headers.get("RequestId", False))) спать (повторить попытку) Элиф req.status_code == 500: print("При создании отчета произошла ошибка. Пожалуйста, повторите запрос позже") print("RequestId: {}".format(req.headers.get("RequestId", False))) print("Код JSON для ответа сервера: \n{}".format(u(req.json()))) ломать Элиф req.status_code == 502: print("Превышен лимит сервера на время создания отчета.") print("Пожалуйста, попробуйте изменить параметры запроса: уменьшите период времени и объем запрашиваемых данных.