#!/usr/bin/env python3
import sys
import urllib.request
import urllib.parse
import re
if len(sys.argv) == 1:
print("Usage: " + sys.argv[0] + " [domain] ...")
sys.exit(1)
for i, arg in enumerate(sys.argv, 1):
domains = set()
with urllib.request.urlopen('https://crt.sh/?q=' + urllib.parse.quote('%.' + arg)) as f:
code = f.read().decode('utf-8')
for cert, domain in re.findall('<tr>(?:\s|\S)*?href="\?id=([0-9]+?)"(?:\s|\S)*?<td>([*_a-zA-Z0-9.-]+?\.' + re.escape(arg) + ')</td>(?:\s|\S)*?</tr>', code, re.IGNORECASE):
domain = domain.split('@')[-1]
if not domain in domains:
domains.add(domain)
print(domain)