import json, re, subprocess, sys

def fetch(slug):
    url = ("https://studiosoft.id/wp-json/wp/v2/posts?slug=%s&_fields=id,date,slug,title,link,content"
           % slug)
    r = subprocess.run(["curl", "-4", "-s", "--http1.1", "--max-time", "150",
                        "-A", "Mozilla/5.0 (Windows NT 10.0; Win64; x64)", url],
                       capture_output=True, text=True)
    return json.loads(r.stdout)

def strip(h):
    h = re.sub(r"<[^>]+>", "\n", h)
    h = h.replace("&#8217;", "'").replace("&#8211;", "-").replace("&amp;", "&").replace("&#038;", "&")
    h = re.sub(r"\n{2,}", "\n", h)
    return h.strip()

for slug in sys.argv[1:]:
    d = fetch(slug)
    if not d:
        print("NOT FOUND", slug)
        continue
    p = d[0]
    print("=" * 100)
    print("WP id %s | %s | %s" % (p["id"], p["date"], p["slug"]))
    print("TITLE:", p["title"]["rendered"])
    print("LINK:", p["link"])
    print("-- CONTENT --")
    print(strip(p["content"]["rendered"])[:6000])
