#!/usr/bin/env python3
"""Putaran 3: verifikasi PKBH UNAIR, BANI Surabaya alamat, dan cari kandidat foto Pexels."""
import json, re, urllib.request, urllib.error

WS = "/home/mantapman/.hermes/profiles/atun/workspace"
UA = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 Chrome/124 Safari/537.36"}
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, n=5):
    req = urllib.request.Request("https://google.serper.dev/search",
                                 data=json.dumps({"q": q, "gl": "id", "hl": "id", "num": n}).encode(),
                                 headers={"X-API-KEY": KEY, "Content-Type": "application/json"})
    try:
        with urllib.request.urlopen(req, timeout=60) as r:
            d = json.load(r)
    except Exception as e:
        return [f"ERROR {e}"]
    return [f"{o.get('link')} :: {(o.get('snippet') or '')[:280]}" for o in d.get("organic", [])[:n]]


for q in ["Pusat Konsultasi dan Bantuan Hukum Fakultas Hukum Universitas Airlangga Surabaya",
          "BANI Surabaya alamat kantor perwakilan Badan Arbitrase Nasional Indonesia",
          "LBH Legundi Surabaya bantuan hukum jalan Legundi",
          "biaya panjar perkara perdata pengadilan negeri gugatan sederhana Rp500 juta",
          "mediasi wajib 30 hari perpanjangan 30 hari Perma 1 tahun 2016 iktikad baik"]:
    print(f"\n### {q}")
    for s in cari(q):
        print("  -", s)


def get(u, n=400000):
    try:
        with urllib.request.urlopen(urllib.request.Request(u, headers=UA), timeout=70) as x:
            return x.status, x.read(n).decode("utf-8", "replace")
    except Exception as e:
        return type(e).__name__, ""


print("\n\n=== KANDIDAT FOTO PEXELS ===")
for q in ["lawyer signing document desk office", "legal documents court hearing papers",
          "notary stamp legal contract signing"]:
    slug = q.replace(" ", "%20")
    u = f"https://r.jina.ai/https://www.pexels.com/search/{slug}/"
    st, t = get(u)
    ids = list(dict.fromkeys(re.findall(r"pexels-photo-(\d+)", t)))
    print(f"\n  [{q}] status={st} jumlah_id={len(ids)}")
    print("   ", ids[:24])
