#!/usr/bin/env python3
"""DARURAT: cek apa yang terjadi pada beranda TSLaw setelah penyimpanan."""
import base64, html, json, re, time, urllib.request, urllib.error

DOM = "tslaw.id"
AUTH = base64.b64encode(b"bambangbot:EFKm EYGx VQCP Y9go ncPr uM2Y").decode()


def wp(path):
    r = urllib.request.Request(f"https://{DOM}{path}", headers={"Authorization": f"Basic {AUTH}", "User-Agent": "Mozilla/5.0"})
    for _ in range(3):
        try:
            with urllib.request.urlopen(r, timeout=150) as x:
                return json.loads(x.read())
        except Exception:
            time.sleep(4)
    return {}


p = wp("/wp-json/wp/v2/pages/833?context=edit&_fields=id,content,modified,date")
raw = p["content"]["raw"] if isinstance(p.get("content"), dict) else ""
print(f"=== KONTEN TERSIMPAN (page 833) ===")
print(f"   panjang: {len(raw)} karakter | diubah: {p.get('modified')}")
print(f"   jumlah blok wp:spectra : {len(re.findall(r'<!-- wp:spectra', raw))}")
print(f"   memuat 'Law Firm & Konsultan Hukum Surabaya': {'YA' if 'Law Firm & Konsultan Hukum Surabaya' in raw else 'TIDAK'}")
print(f"   memuat 'Tentang Tito Suprianto Law Firm': {'YA' if 'Tentang Tito Suprianto Law Firm' in raw else 'TIDAK'}")
ada_schema = "YA" if '@type\\": \\"Attorney' in raw or '"@type": "Attorney"' in raw else "TIDAK"
print(f"   memuat schema Attorney : {ada_schema}")
print(f"   ada </script> penutup   : {raw.count('</script>')}")
print(f"   50 karakter terakhir   : {raw[-50:]!r}")
print(f"   50 karakter pertama    : {raw[:50]!r}")

print("\n=== YANG TAMPIL DI HALAMAN LIVE ===")
h = urllib.request.urlopen(urllib.request.Request("https://www.tslaw.id/", headers={"User-Agent": "Mozilla/5.0"}), timeout=120).read().decode("utf-8", "replace")
for s in ("Law Firm & Konsultan Hukum Surabaya", "Tentang Tito Suprianto Law Firm", "Tito Suprianto Law Firm",
          '"Attorney"', "spectra-content", "<h1", "<h2"):
    print(f"   '{s[:44]}': {h.count(s)} kemunculan")
teks = re.sub(r"\s+", " ", html.unescape(re.sub(r"<[^>]+>", " ", re.sub(r"<(script|style)[^>]*>.*?</\1>", " ", h, flags=re.S | re.I))))
print("\n   cuplikan teks halaman:", teks[:400])
