#!/usr/bin/env python3
"""Peta query -> halaman untuk query non-brand utama LEIT (28 & 90 hari)."""
import os
from datetime import date, timedelta
from google.oauth2 import service_account
from googleapiclient.discovery import build

SA = os.path.expanduser("~/.hermes/gsc_service_account.json")
creds = service_account.Credentials.from_service_account_file(SA, scopes=["https://www.googleapis.com/auth/webmasters.readonly"])
gsc = build("webmasters", "v3", credentials=creds, cache_discovery=False)
SITE = "https://www.leitsurabaya.com/"
end = date.today() - timedelta(days=2)
start90 = (end - timedelta(days=89)).isoformat()
end = end.isoformat()

KWS = ["les ielts surabaya", "ielts surabaya", "kursus ielts surabaya", "les bahasa inggris surabaya barat",
       "kursus bahasa inggris surabaya barat", "les bahasa inggris surabaya", "kursus bahasa inggris surabaya",
       "kursus bahasa inggris terdekat", "les bahasa inggris terdekat", "bimbel bahasa inggris surabaya",
       "les bahasa inggris surabaya timur", "toefl vs ielts"]

print(f"periode: {start90} → {end}\n")
for kw in KWS:
    body = {"startDate": start90, "endDate": end, "dimensions": ["page"],
            "dimensionFilterGroups": [{"filters": [{"dimension": "query", "operator": "equals", "expression": kw}]}],
            "rowLimit": 4}
    rows = gsc.searchanalytics().query(siteUrl=SITE, body=body).execute().get("rows", [])
    if not rows:
        print(f"  {kw:<38} → (tidak ada data)"); continue
    for r in rows:
        print(f"  {kw:<38} {int(r['impressions']):>4} imp {int(r['clicks']):>3} klik pos {r['position']:>5.1f} → {r['keys'][0].replace('https://www.leitsurabaya.com','')}")
