#!/usr/bin/env python3
"""Quick DuckDuckGo HTML search -> print result URLs (no API key needed)."""
import html
import re
import sys
import urllib.parse
import urllib.request

UA = ("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) "
      "Chrome/124.0.0.0 Safari/537.36")

q = sys.argv[1]
limit = int(sys.argv[2]) if len(sys.argv) > 2 else 10
url = "https://html.duckduckgo.com/html/?q=" + urllib.parse.quote(q)
req = urllib.request.Request(url, headers={"User-Agent": UA})
page = urllib.request.urlopen(req, timeout=45).read().decode("utf-8", "ignore")
out = []
for m in re.finditer(r'href="(//duckduckgo\.com/l/\?uddg=[^"]+)"', page):
    link = urllib.parse.unquote(m.group(1))
    real = re.search(r"uddg=([^&]+)", link).group(1)
    real = html.unescape(urllib.parse.unquote(real))
    if real not in out:
        out.append(real)
for u in out[:limit]:
    print(u)
