#!/usr/bin/env python3
"""Cek jejak sebutan/tautan TSC di internet dan kehadirannya di daftar/direktori lokal."""
import json, time, urllib.request

WS = "/home/mantapman/.hermes/profiles/atun/workspace"
T = json.load(open(f"{WS}/.serper_token.json"))
KEY = T.get("api_key") or T.get("key") or list(T.values())[0]
H = {"User-Agent": "Mozilla/5.0", "X-API-KEY": KEY, "Content-Type": "application/json"}


def serper(q, num=20):
    r = urllib.request.Request("https://google.serper.dev/search",
                               data=json.dumps({"q": q, "gl": "id", "hl": "id", "num": num}).encode(),
                               headers=H)
    try:
        return json.loads(urllib.request.urlopen(r, timeout=60).read())
    except Exception as e:
        return {"err": str(e)[:40]}


print("=== siapa yang menyebut / menaut TSC ===")
for q in ('"theskincodeclinic.com"', '"The Skin Code Clinic" Krian -site:theskincodeclinic.com -site:instagram.com',
          'klinik kulit krian rekomendasi', '"The Skin Code Clinic" ulasan'):
    d = serper(q)
    org = d.get("organic", [])[:8]
    print(f"\n«{q}» — {len(org)} hasil")
    for h in org:
        print(f"   {str(h.get('link',''))[:78]}")
        print(f"      {str(h.get('title',''))[:70]}")
    time.sleep(0.4)

print("\n=== hasil peta untuk kueri uang TSC ===")
for q in ("klinik kulit sidoarjo", "klinik kecantikan krian", "dokter kulit sidoarjo"):
    d = serper(q)
    pl = (d.get("places") or [])[:5]
    print(f"\n«{q}»")
    for p in pl:
        nama = str(p.get("title", ""))[:38]
        print(f"   {nama:<40} {p.get('ratingCount')} ulasan")
