#!/usr/bin/env python3
"""Cek fakta untuk penambahan isi #3566 (biaya jasa law firm Surabaya) — 13 Okt 2026."""
import json, urllib.request, urllib.error

WS = "/home/mantapman/.hermes/profiles/atun/workspace"
UA = {"User-Agent": "Mozilla/5.0"}


def head(u):
    try:
        r = urllib.request.Request(u, headers=UA, method="GET")
        with urllib.request.urlopen(r, timeout=60) as x:
            return x.status
    except urllib.error.HTTPError as e:
        return e.code
    except Exception as e:
        return type(e).__name__


print("=== STATUS TAUTAN YANG AKAN DIPAKAI ===")
for u in ["https://www.tslaw.id/law-firm-surabaya/",
          "https://www.tslaw.id/7-hal-penting-tentang-biaya-konsultasi-hukum-yang-perlu-anda-ketahui/",
          "https://www.tslaw.id/6-cara-mediasi-sengketa-bisnis-oleh-kantor-pengacara-surabaya-terpercaya/",
          "https://www.tslaw.id/7-langkah-hukum-menagih-utang-piutang-secara-profesional-tanpa-main-hakim-sendiri/",
          "https://www.tslaw.id/8-langkah-penting-mengurus-somasi-hutang-agar-tagihan-cepat-dibayar/",
          "https://www.tslaw.id/6-jenis-surat-kuasa-hukum-dan-fungsinya-yang-wajib-anda-pahami/"]:
    print(f"  {head(u)}  {u}")

tok = json.load(open(f"{WS}/.serper_token.json"))
KEY = tok.get("api_key") or tok.get("key") or list(tok.values())[0]


def cari(q):
    req = urllib.request.Request("https://google.serper.dev/search",
                                 data=json.dumps({"q": q, "gl": "id", "hl": "id", "num": 5}).encode(),
                                 headers={"X-API-KEY": KEY, "Content-Type": "application/json"})
    with urllib.request.urlopen(req, timeout=60) as r:
        d = json.load(r)
    ab = d.get("answerBox") or d.get("knowledgeGraph")
    out = []
    if ab:
        out.append({"t": "ANSWERBOX", "s": (ab.get("answer") or ab.get("snippet") or ab.get("description") or "")[:400], "u": ab.get("link")})
    for o in d.get("organic", [])[:5]:
        out.append({"t": o.get("title"), "s": (o.get("snippet") or "")[:350], "u": o.get("link")})
    return out


Q = [
    "Pasal 21 UU 18 tahun 2003 advokat berhak menerima honorarium jasa hukum",
    "Pasal 18 UU 18 tahun 2003 advokat perjanjian tertulis dengan klien",
    "biaya pendaftaran gugatan pengadilan negeri Rp 30.000 panjar biaya perkara PNBP",
    "biaya panggilan pemberitahuan pihak pengadilan ditanggung panjar biaya perkara",
    "bea meterai Rp 10.000 UU 10 tahun 2020 dokumen perjanjian",
    "hak retensi advokat menahan dokumen klien honorarium belum dibayar UU advokat",
]
for q in Q:
    print(f"\n### {q}")
    try:
        for r in cari(q):
            print(f"  - {r['t'][:110] if r['t'] else ''}")
            print(f"    {(r['s'] or '')[:320]}")
            print(f"    {r['u']}")
    except Exception as e:
        print("  GAGAL:", type(e).__name__, e)
