W artykule przedstawione zostaną praktyczne metody tworzenia raportów SEO z wykorzystaniem Google API. Dowiesz się, jak sprawnie połączyć się z usługami takimi jak Google Search Console i Google Analytics, a także w jaki sposób automatyzować proces gromadzenia danych przy pomocy skryptów w języku Python. Omówione zostaną kluczowe etapy integracji, analiza pozyskanych informacji oraz techniki wizualizacji w narzędziach takich jak Data Studio czy BigQuery.
Integracja Google Search Console API w raportach SEO
Pierwszym krokiem jest uzyskanie dostępu do Google Search Console poprzez API. W konsoli Google Cloud należy stworzyć projekt, włączyć usługę Search Console API oraz wygenerować poświadczenia (klucz JSON). Po zainstalowaniu biblioteki w Python wystarczy zaimportować moduły i wykonać autoryzację:
from google.oauth2 import service_account
from googleapiclient.discovery import build
credentials = service_account.Credentials.from_service_account_file('klucz.json', scopes=['https://www.googleapis.com/auth/webmasters.readonly'])
service = build('searchconsole', 'v1', credentials=credentials)
Dzięki temu w prosty sposób można wysyłać zapytania do API i otrzymywać dane o zapytaniach, stronach, kliknięciach, wyświetleniach, CTR oraz średniej pozycji.
Uzyskiwanie danych o widoczności
- Pobranie listy zweryfikowanych witryn
- Określenie zakresu dat i typów zapytań (web, image, video)
- Filtrowanie fraz po określonych słowach kluczowych
- Analiza trendów kliknięć i wyświetleń
Przykładowe zapytanie:
response = service.searchanalytics().query(
siteUrl='https://twojadomena.pl',
body={
'startDate': '2023-01-01',
'endDate': '2023-01-31',
'dimensions': ['query', 'page'],
'rowLimit': 1000
}
).execute()
Otrzymane wyniki przetwarzamy i zapisujemy do ramki danych Pandas, co umożliwi dalszą analizę i eksport do plików CSV lub bezpośrednią wizualizację.
Wykorzystanie Google Analytics API do pogłębionej analizy ruchu
Połączenie z Google Analytics pozwala na uzupełnienie raportu o metryki takie jak liczba sesji, czas trwania sesji czy wskaźnik odrzuceń. W analogiczny sposób co wcześniej uzyskujemy klucz serwisowy i konfigurujemy dostęp.
Pobieranie danych z raportu
from googleapiclient.discovery import build
analytics = build('analyticsreporting', 'v4', credentials=credentials)
report = analytics.reports().batchGet(
body={
'reportRequests': [{
'viewId': '123456789',
'dateRanges': [{'startDate': '30daysAgo', 'endDate': 'today'}],
'metrics': [{'expression': 'ga:sessions'}, {'expression': 'ga:bounceRate'}],
'dimensions': [{'name': 'ga:sourceMedium'}, {'name': 'ga:landingPagePath'}]
}]
}
).execute()
Dane z odpowiedzi API zamieniamy na struktury tabelaryczne, dzięki czemu możemy łatwo porównać źródła ruchu organicznego z innymi kanałami, a także analizować efektywność konkretnych stron docelowych.
Automatyzacja procesów raportowania i wizualizacja danych
Aby zapewnić regularne dostarczanie raportów SEO bez ręcznej ingerencji, warto skorzystać z możliwości automatyzacji. Jednym z rozwiązań jest użycie Google Apps Script do harmonogramowania zadań lub skryptów uruchamianych na serwerze (cron).
Integracja z Google Sheets i Data Studio
- Eksport surowych danych do arkusza Google Sheets przy pomocy API
- Przetwarzanie i agregacja danych w arkuszu
- Tworzenie raportu w Google Data Studio na podstawie arkusza
- Ustawienie automatycznego odświeżania każdego dnia lub tygodnia
Dodatkowo można wykorzystać BigQuery do przechowywania dużych wolumenów danych SEO i przeprowadzać złożone zapytania SQL. Dzięki temu zyskujesz pełną elastyczność oraz wydajność przy analizie historycznych trendów.
Przykład automatyzacji w Pythonie
import schedule
import time
def generate_seo_report():
# pobranie danych z API
# zapis do BigQuery lub Google Sheets
print('Raport wygenerowany')
schedule.every().monday.at("08:00").do(generate_seo_report)
while True:
schedule.run_pending()
time.sleep(60)
Dzięki takiemu podejściu można skupić się na interpretacji wyników i optymalizacji strategii SEO, zamiast na ręcznym zbieraniu danych. Kluczowe elementy to prawidłowa integracja, solidne testy skryptów oraz stały monitoring, który gwarantuje spójność i wiarygodność raportów.