Google Merchant Center este platforma prin care comercianții online pot face produsele lor vizibile în…

Google Search Console API cu Python, extragere automată de date și rapoarte SEO
Google Search Console API cu Python vă permite să extrageți automat datele de performanță SEO, să creați rapoarte personalizate și să monitorizați evoluția cuvintelor cheie fără a accesa manual interfața web. API-ul este gratuit, cu o limită de 500.000 de rânduri pe lună.
Automatizarea rapoartelor SEO economisește ore întregi de muncă manuală și permite analiza unor volume de date imposibil de procesat manual din interfața web.
Google Search Console API cu Python, extragere automată de date și rapoarte SEO
Endpoint-ul principal al API-ului este Search Analytics, care returnează date despre click-uri, afișări, CTR și poziție medie. Puteți filtra după interogare, pagină, țară, dispozitiv și dată, cu date disponibile cu o întârziere de 2-3 zile față de data reală.
Autentificarea și configurarea API-ului
Google Search Console API folosește OAuth 2.0 pentru autentificare. Există două metode: OAuth interactiv (pentru scripturi rulate local) și Service Account (pentru automatizare serverside).
Metoda OAuth 2.0 (recomandată pentru scripturi locale)
- Accesați Google Cloud Console și creați un proiect nou
- Activați API-ul Google Search Console API
- Creați credențiale de tip OAuth 2.0 Client ID (Desktop application)
- Descărcați fișierul
client_secret.json - Instalați librăria necesară:
pip install google-auth-oauthlib google-auth-httplib2 google-api-python-client
Extragerea datelor de bază
Scriptul următor autentifică și extrage top 25.000 de cuvinte cheie pentru un site, cu click-uri, afișări, CTR și poziție.
from googleapiclient.discovery import build
from google_auth_oauthlib.flow import InstalledAppFlow
import pandas as pd
from datetime import datetime, timedelta
SCOPES = ['https://www.googleapis.com/auth/webmasters.readonly']
SITE_URL = 'https://www.opti-seo.ro/'
# Autentificare
flow = InstalledAppFlow.from_client_secrets_file('client_secret.json', SCOPES)
credentials = flow.run_local_server(port=0)
service = build('searchconsole', 'v1', credentials=credentials)
# Date pentru ultimele 90 de zile
end_date = datetime.now().strftime('%Y-%m-%d')
start_date = (datetime.now() - timedelta(days=90)).strftime('%Y-%m-%d')
# Request pentru cuvinte cheie
request = {
'startDate': start_date,
'endDate': end_date,
'dimensions': ['query'],
'rowLimit': 25000,
'startRow': 0
}
response = service.searchanalytics().query(siteUrl=SITE_URL, body=request).execute()
rows = response.get('rows', [])
# Conversie in DataFrame
data = []
for row in rows:
data.append({
'query': row['keys'][0],
'clicks': row['clicks'],
'impressions': row['impressions'],
'ctr': round(row['ctr'] * 100, 2),
'position': round(row['position'], 1)
})
df = pd.DataFrame(data)
df.to_csv('search_console_data.csv', index=False, encoding='utf-8')
print(f"Exportate {len(df)} randuri")Extragerea datelor pe pagini
Analiza performanței per pagină identifică paginile cu potențial neexploatat și pe cele care pierd poziții.
request_pages = {
'startDate': start_date,
'endDate': end_date,
'dimensions': ['page'],
'rowLimit': 25000
}
# Comparatie cu perioada anterioara
request_prev = {
'startDate': (datetime.now() - timedelta(days=180)).strftime('%Y-%m-%d'),
'endDate': (datetime.now() - timedelta(days=91)).strftime('%Y-%m-%d'),
'dimensions': ['page'],
'rowLimit': 25000
}Raport automat: oportunități de optimizare CTR
Una dintre cele mai utile analize este identificarea cuvintelor cheie cu afișări mari dar CTR scăzut. Acestea sunt oportunități directe de optimizare a titlurilor și meta descrierilor.
# Filtrare cuvinte cheie cu potential
oportunitate = df[
(df['impressions'] > 100) &
(df['ctr'] < 2.0) &
(df['position'] < 20)
].sort_values('impressions', ascending=False)
print("Top 20 oportunitati CTR:")
print(oportunitate.head(20).to_string())Dimensiuni disponibile în Search Analytics API
- query: Cuvântul cheie căutat
- page: URL-ul paginii afișate
- country: Țara utilizatorului (cod ISO 3166-1 alpha-3)
- device: DESKTOP, MOBILE, TABLET
- date: Data specifică (permite evoluția zilnică)
- searchAppearance: Tipul de rezultat (RICHCARD, AMP_TOP_STORIES etc.)
Automatizarea cu Google Sheets
Exportul direct în Google Sheets permite crearea de dashboarduri automate accesibile echipei fără cunoștințe tehnice.
import gspread
from google.oauth2.service_account import Credentials
scope = ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive']
creds = Credentials.from_service_account_file('service_account.json', scopes=scope)
client = gspread.authorize(creds)
sheet = client.open('SEO Dashboard').sheet1
sheet.clear()
sheet.update([df.columns.tolist()] + df.values.tolist())Concluzie
Google Search Console API transformă analiza SEO dintr-o activitate manuală într-un proces automatizat și scalabil. Cu câteva ore de configurare inițială, obțineți rapoarte săptămânale automate care economisesc timp și elimină erorile umane.
Dacă aveți nevoie de implementarea unui sistem de raportare SEO automatizat, contactați echipa opti-seo.ro.


Comments (0)