401
SEO Читати 14 хвилин

Як автоматизувати SEO-задачі з допомогою API Serpstat — інструкція від Flatfy

Як швидко отримувати дані та створювати дашборди?
Як створювати дашборди?
Влад Моргун
Влад Моргун
SEO Team-lead at Flatfy
Щороку ми чуємо: «SEO — померло», але фахівці з пошукової оптимізації не сумують і не зупиняються на досягнутому, оскільки, з розвитком пошукових систем, їхня робота постійно вимагає вивчення нових WEB-технологій і розширення компетенцій у суміжних галузях (аналітика, дизайн, маркетинг і т.д.).

Завдань та їхньої різноманітності стає дедалі більше, а час іде з тією ж швидкістю. У цій статті я розповім про те, як ми автоматизуємо роботи з виконання SEO-завдань за допомогою API та економимо купу часу.

Для вирішення яких задач ми використовуємо Serpstat?

Якщо кілька років тому можна було вирішувати всі питання через Excel, то зараз варто звернути увагу на вивчення JS, Python та базових знань HTML, CSS, командного рядка, роботи HTTP. У своїй роботі ми все частіше намагаємось автоматизувати:
  • Збір семантики та кластеризацію\фільтрацію.
  • Моніторинг змін на сайті та його доступності, SEO параметрів наших сайтів, конкурентів, донорів.
  • Генерацію текстів та шаблонних сторінок.
  • Роботу з посилальною масою, побудову стратегії лінкбілдингу, аутріч.
  • Інші рутинні завдання.
Мене звати Влад Моргун, я SEO Team-Lead у Flatfy. Платформа допомагає мільйонам користувачів із 30 країн світу знайти собі житло. Основний вектор розвитку — це вторинна житлова нерухомість у мегаполісах, а тому ми працюємо над створенням швидкої пошукової системи з урахуванням усіх побажань користувачів для релевантної їм відповіді.

Для того, щоб працювати ефективно над усіма нашими проєктами, команда постійно тестує різні інструменти для digital-маркетингу, а особливо ті, які мають API. З Serpstat познайомилися ще на початку його існування, коли сервіс працював під брендом Prodvigator. Олег Саламаха та його команда допомогли по-справжньому «розсмакувати» продукт та «підсадити» на його використання.
Географія Flatfy
Географія користувачів Flatfy
Зараз у Serpstat величезна база за ключами та посиланнями, але головне — одне з найзручніших API. Це важливо, оскільки при роботі з великою кількістю сайтів потрібно постійно зберігати в одному місці багато даних та аналізувати їх, а без API нам довелося б наймати школяра-фрілансера, щоб він тицяв на кнопки «зберегти звіт» :)

У цій статті, орієнтованій більше на Junior SEO, я покажу на прикладі проєктів у сфері нерухомості, як можна досить просто використовувати API Serpstat.Також, постараюся довести, що навіть з початковими знаннями з розробки та вміннями працювати з Google, StackOverflow та Copy- Paste-, можна спрощувати собі щоденну роботу та отримати перевагу перед конкурентами.
Пакетний аналіз даних в один клік

Як використовувати API Serpstat у Google Spreadsheet без плагінів?

SEO-фахівець повинен постійно самовдосконалюватись, оскільки це досить динамічна сфера діяльності, яка потребує багатосторонніх знань, найчастіше сильно зав'язана на аналізі даних та досвіді. Чим більше і швидше ви отримуватимете досвід — тим краще, а тому дуже важливо вміти автоматизувати процеси, щоб звільнити час.

Далі в цьому розділі робитимемо все так, як, якби у мене не було знань у розробці, але було вміння шукати в Google. Хочу надихнути новачків на розвиток та навчання. Поїхали!
Йдемо розбиратися в тому, що таке API прямо в Wikipedia:
API (програмний інтерфейс програми, application programming interface) — опис способів (набір класів, процедур, функцій, структур або констант), якими одна комп'ютерна програма може взаємодіяти з іншою програмою.
З визначення ми вже починаємо уявляти, що взаємодіятимемо з сервісом Serpstat без інтерфейсу через якусь іншу програму. Це дозволить не витрачати час на те, щоб зайти до Serpstat, вибрати потрібні звіти та фільтри, вивантажити їх і лише потім почати з ними працювати.

А що найбільше люблять SEO-шники? Правильно! Таблиці. Але замість Excel, у цій статті, будемо використовувати Google Spreadsheet.

Щоб працювати з даними в таблицях, ми постійно використовуємо функції, але в основному наборі функція «=serpstat (дай мені дані)» відсутня, а тому створюємо свою.

При першому і найпростішому запиті в Google: «google sheets custom function» — знаходимо на першому місці мануал, в якому розповідається про App Script.
Google Apps Script — це скриптова мова, заснована на JavaScript.
Можна більше почитати та дізнатися про основи роботи в цьому мануалі.

Далі переходимо до поняття endpoint API.
Endpoint — це точка прийому запиту на стороні сервера (API).
У нашому випадку це https://api.serpstat.com/v4/?token={token}, де:
Профіль Serpstat API
Зверніть увагу! На момент написання статті Serpstat підтримував версію API v3 з GET-параметрами, але наразі використовується оновлена версія API v4, яка працює з POST-запитами.

Відмінність методів GET від POST лежить у способі передачі даних. Запит GET передає дані в URL, а запит POST — в тілі запиту. Приклад запиту за методом API v4 Domain_info:
{
 "id": "1",
 "method": "SerpstatDomainProcedure.getDomainsInfo",
 "params": {
   "domains": ["nike.com", "adidas.com"],
   "se": "g_us"
 }
}
Ця відмінність визначає властивості методів і особливості запитів для використання того чи іншого методу.

Приклад з кейсу можна розглядати, як демонстрацію можливостей для написання власних скриптів чи використання існуючих і отримання даних, відповідно до ваших задач.
Хотіли б розібратися з функціями API в Serpstat?
Протестуйте платформу безкоштовно за 7 днів!
Звертаючись за цим URL можна отримати відповідь з потрібними даними у форматі JSON.
JSON (англ. JavaScript Object Notation) — текстовий формат обміну даними, що базується на JavaScript.
Візьмемо готовий скрипт для роботи з JSON у Google Spreadsheet (а точніше загуглимо «google spreadsheet json import»):

Код «формула 1»:
Або простіший код «формула 2»:
Фрагмент коду
Щоб додати формулу =ImportJSON. Я спеціально беру готові скрипти, щоб показати, що за великого бажання можна автоматизувати SEO-завдання з мінімальними знаннями програмування, використовуючи чужі напрацювання.

Переносимо теоретичні знання на практику.
1
Створюємо нову таблицю Google Spreadsheet, в яку будемо записувати дані.
2
Вибираємо Tools → Script Editor.
Script Editor
3
Видаляємо стандартну функцію та замість неї вставляємо JS-код.
JS код
4
Зберігаємо (File→ Save) і переходимо назад у Spreadsheet-таблицю.
5
Тепер вводимо у комірці формулу =ImportJSON().
Import JSON
Як самостійно зібрати семантичне ядро за допомогою Serpstat

Як створити dashboard по конкурентам з потрібними параметрами?

Кожен SEO-шник повинен знати, що роблять його конкуренти і як розвивається ніша загалом. Якщо не тримати «руку на пульсі», то можна втратити момент, коли правила в ніші зміняться та доведеться швидко адаптуватись. Тому чим раніше ви помітите зміни у топах, на сайтах конкурентів — тим краще. Інакше, з падіння позицій можна виходити місяцями.

Найпростіший варіант використання API — створення звітів. Створимо досить простий дашборд на прикладі коду з Формули 2 для аналізу конкурентів з такими параметрами:
  • кількість ключових слів, за якими ранжується сайт;
  • SEO трафік;
  • кількість рекламних оголошень у Google Ads.
Навіть такі прості показники можуть показати нам, наскільки наш проект відрізняється від конкурентів за «потужністю», а якщо зберігати дані, наприклад, по місяцях, то можна простежити динаміку розвитку проєкту.

Ось так виглядає міні-звіт з кількістю ключових слів, трафіку та оголошеннями в контекстній рекламі конкурентів у сфері нерухомості.
Приклад запиту
Порада: Зберігайте змінні в окремих комірках, а потім використовуйте їх через формулу =CONCATENATE() — з'єднання комірок в одну.

Наприклад, змінними будуть: сайти (стовпчик А), ключ API Serpstat (комірка G2) та пошукова система (комірка H2).
Далі збираємо у стовпчику F URL, до яких звертатимемося за допомогою формули =CONCATENATE("https://api.serpstat.com/v3/domain_info?query=",A2,"&token=",G$2,"&se=",H$2). Піктограма $ перед цифрою комірки означає — не змінювати цифру під час протягування формули.

Тепер нам залишилося зробити запити до одного з атрибутів із JSON-масиву. JSON має вкладеність (деревоподібну структуру), яку розділятимемо слешами.

Наприклад, потрібно отримати кількість ключових фраз сайту. Для цього використовуватимемо формулу =IMPORTJSON(F2,"result/keywords") (комірка B1). Якщо хочемо дістати трафік, то поміняємо наш запит на =IMPORTJSON(F2,"result/traff").
Приклад запиту
Для вирішення своїх завдань ви можете перевірити у довідці Serpstat параметри відповіді API-методу, (у нашому прикладі keywords, traff, ads) з відповідей API та дізнатися, які значення можна отримати.
4 прийоми, які варто спробувати, щоб полегшити SEO оптимізацію для e-commerce сайту

Як швидко отримати дані?

Тепер розглянемо завдання, коли вам потрібно швидко отримати дані, але не використовувати інтерфейс. Наприклад, дістати топи на запити або частотність певних ключів.

Для приклада візьмемо код з «формули 1». У ньому є кілька цікавих особливостей, які нам будуть потрібні. Всі ці особливості можна побачити у довідці, що спливає, при введенні формули в коментарях розробника коду.

Важлива для нас особливість — можливість виводити відразу кілька ключів (json keys) та отримувати дані щодо них.

Ми хочемо дуже швидко дізнатися топ-100 за кількома запитами. Наприклад, я дуже часто роблю це для швидкої перевірки кластеризації запитів. Є хороший запит і я не знаю, до якої сторінки він точно підійде краще. Отримую топи за декількома запитами й просто в Spreadsheet і порівнюю їх перетин. Таким чином, не потрібно запускати додаткові звіти для кластеризації кількох запитів та витрачати час на відкриття кількох вкладок з Google та порівняння топів в них.

Для цього звертаємось до https://api.serpstat.com/v3/keyword_top і готуємо формулу =ImportJSON(F2,"/result/top/position,/result/top/url") — зверніть увагу на те, що ми використовували два параметри через кому: /result/top/position та /result/top/url.

Таким чином отримуємо два стовпчики з даними: позиції з топ-100 та самі URL.
Приклад запиту за топом
Можливо, ви хочете швидко перевірити частоту запитів. Тут все аналогічно, але використовуємо запит https://api.serpstat.com/v3/keyword_info і формулу =ImportJSON(F2,"/result/region_queries_count","noHeaders").

У цьому прикладі є ще одна особливість — додаткові параметри. Параметр «noHeaders» дозволяє прибрати нам зайві заголовки та отримати просто дані. Виписуємо в стовпчик А потрібні нам ключі для перевірки, і «протягуємо» формулу далі в стовпчику B.
Запити з додатковими параметрами
Хотіли б побачити більше кейсів?

Висновки

Таким чином, за допомогою Google, мінімальних знань у розробці, детальної довідки від Serpstat і, найголовніше, бажання — можна діставати будь-які дані дуже швидко.

У Flatfy є правило — якщо якась задача виникає кілька разів і вона може бути автоматизована — автоматизуємо. Багато фірм купують співробітникам нову техніку, щоб підвищити продуктивність, але мало хто вважає скільки часу співробітник може витратити на простий збір даних, замість його аналізу та перемикання вкладок, можна реалізувати перегляд всіх даних в одному дашборді.

Автоматизуючи процеси збору та обробки даних, ми покращуємо якість виконання завдань, отримуємо більше часу для пріоритетних завдань та розвитку проєктів.

Використання API Serpstat – економія годинника робочого часу. За допомогою таких простих автоматизацій можна економити щонайменше одну робочу годину на день для SEO-фахівця, що на місяць виходить: 23 робочих дні * 1 година * (1000/23/8)$/година = 125$ в місяць (12,5% від зарплати).
Щоб бути в курсі всіх новин блогу Serpstat, підписуйтесь розсилку. А також вступайте до чату любителів Серпстатити — ком'юніті для SEO спеціалістів.

Serpstat – набір інструментів для пошукового маркетингу!

Знаходьте ключові фрази та ресурси для зворотних посилань, аналізуйте стратегії конкурентів, щодня відстежуйте позиції у видачі, виправляйте SEO-помилки та керуйте діджитал-командами.

Пакет інструментів для економії часу на виконання SEO-завдань.

Отримати безкоштовний доступ на 7 днів
Думка авторів гостьових дописів може не збігатися з думкою редакції та спеціалістів Serpstat.

Оцініть статтю за п’ятибальною шкалою

Ця стаття вже була оцінена 4 людьми середньою оцінкою 5 із 5 можливих
Знайшли помилку? Виділіть її та натисніть Ctrl + Enter, щоб повідомити нам.

Поділіться статтею з вашими друзями

Ви впевнені?

Знайомство з сервісом

Serpstat економить час, як і ми готові заощадити ваш, на знайомстві з ключовими можливостями сервісу.

Наш фахівець зв'яжеться з вами і за підсумком запропонує відповідний варіант, який може включати персональну демонстрацію, пробний період, навчальні статті та записи вебінарів, консультацію фахівця, а також комфортні умови для старту використання Serpstat.

Ім’я

Введіть адресу електронної пошти

Телефон

Будемо раді вашому коментарю

Дякуємо, ми зберегли ваші нові налаштування розсилок.

Report a bug

Скасувати
Відкрити чат технічної підтримки
mail pocket flipboard Messenger telegramm