W artykule przedstawione zostaną praktyczne sposoby analizowania danych z Search Console przy użyciu Pythonie. Skupimy się na krokach niezbędnych do uzyskania dostępu do API, przetwarzaniu i ich dalszej analizie, a także metodach wykorzystania wyników do poprawy pozycji w wyszukiwarkach. Przykłady zaprezentujemy krok po kroku, aby każdy specjalista SEO mógł wprowadzić automatyzację w swoje działania.
Łączenie z API Search Console w Pythonie
Pierwszym etapem pracy jest nawiązanie połączenia z Search Console za pomocą API. W tym celu wymagane jest przygotowanie odpowiedniego projektu w Google Cloud oraz uzyskanie pliku z danymi uwierzytelniającymi.
Instalacja niezbędnych bibliotek
- google-auth
- google-auth-oauthlib
- google-auth-httplib2
- google-api-python-client
Instalację można przeprowadzić poprzez polecenie pip:
- pip install google-auth google-auth-oauthlib google-auth-httplib2 google-api-python-client
Konfiguracja dostępu
Po utworzeniu projektu w Google Cloud i włączeniu Search Console API należy pobrać plik JSON z danymi uwierzytelniającymi. Następnie w skrypcie Pythona można skorzystać z kodu:
from google.oauth2 import service_account
from googleapiclient.discovery import build
SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']
KEY_FILE = 'path/to/credentials.json'
credentials = service_account.Credentials.from_service_account_file(KEY_FILE, scopes=SCOPES)
service = build('searchconsole', 'v1', credentials=credentials)
W ten sposób uzyskujemy instancję klienta API, która umożliwia wysyłanie zapytań do Search Console.
Przetwarzanie i analiza danych
Gdy mamy już aktywne połączenie, możemy pobrać dane dotyczące wydajności witryny, czyli liczby wyświetleń, kliknięć, CTR oraz średniej pozycji w wynikach wyszukiwania.
Pobieranie raportu wydajności
Przykładowe wywołanie metody do pobrania danych za wybrany okres:
request = {
'startDate': '2023-01-01',
'endDate': '2023-12-31',
'dimensions': ['query', 'page'],
'rowLimit': 25000
}
response = service.searchanalytics().query(siteUrl='https://twojastrona.pl', body=request).execute()
rows = response.get('rows', [])
- dimensions: określa zakres danych (np. zapytania, strony, kraje).
- rowLimit: maksymalna liczba wierszy do pobrania.
Przygotowanie danych do analizy
Po pobraniu surowych wyników warto je przekształcić do formatu DataFrame z biblioteki pandas:
import pandas as pd
data = []
for row in rows:
record = {
'query': row['keys'][0],
'page': row['keys'][1],
'clicks': row['clicks'],
'impressions': row['impressions'],
'ctr': row['ctr'],
'position': row['position']
}
data.append(record)
df = pd.DataFrame(data)
Teraz możemy skorzystać z możliwości pandas oraz bibliotek wizualizacyjnych, takich jak matplotlib czy seaborn, by tworzyć czytelne wykresy i tabele.
Przykładowe analizy
- Analiza kluczowych słów o najwyższym potencjale – sortowanie po liczbie wyświetleń i CTR.
- Wykrywanie stron z niską średnią pozycją, ale wysokim CTR.
- Porównywanie wyników między okresami – wzrosty i spadki.
Wykorzystanie wyników analizy do optymalizacji SEO
Uzyskane raporty należy przełożyć na konkretne działania optymalizacyjne. Dzięki danym z Search Console w Pythonie można tworzyć dynamiczne zestawienia i raporty, które wspierają codzienną pracę SEO.
Identyfikacja szans
Wysoka liczba wyświetleń przy niskiej pozycji sugeruje, że warto zoptymalizować treści pod określone zapytania. Można wówczas poprawić meta tagi, nagłówki H1–H3, a także dodać odpowiednie słowa kluczowe do treści.
Monitorowanie zmian
Automatyczne skrypty mogą codziennie pobierać dane i wysyłać powiadomienia, gdy nastąpi spadek pozycji o określony procent. Dzięki temu zespół SEO błyskawicznie reaguje na problemy techniczne lub zmiany w algorytmie Google.
- Wysyłanie raportów e-mail z podsumowaniem najważniejszych wskaźników.
- Integracja z systemem Slack lub Teams — błyskawiczne alerty.
Integracja z innymi narzędziami SEO
W praktyce warto łączyć dane z Search Console z wynikami z narzędzi takich jak Ahrefs, SEMrush czy Moz. Połączenie różnych źródeł umożliwia pełniejszy przegląd konkurencji i identyfikację dodatkowych możliwości rozwoju.
Przykład integracji z API Ahrefs
Można pobrać dane o backlinkach i zestawić je z liczbą wejść z wyników organicznych. W Pythonie taka integracja przebiega analogicznie – wczytujemy dane z obu API i łączymy je w jednym DataFrame.
Wizualizacja cross-platformowa
- Dashboardy w Google Data Studio z wykorzystaniem BigQuery.
- Interaktywne raporty w Tableau łączące różne źródła.
Dzięki automatyzacji i zastosowaniu skryptów w Pythonie, specjaliści SEO zyskują narzędzie pozwalające na bieżąco monitorować efektywność działań i podejmować decyzje oparte na twardych danych.