Domain availability checker using regex patterns with HTTP proxy support
pip install -r requirements.txt# Check domains matching pattern (generates and checks all combinations)
python domex.py "^[a-z]{2}[0-9]{3}\.(com|net)$"
# With custom rate limit (requests per second)
python domex.py "^[a-z]{2}[0-9]{3}\.(com|net)$" --rate 5
# Output available domains to file
python domex.py "^[a-z]{2}[0-9]{3}\.(com|net)$" --output available.txt
# Limit number of domains to check
python domex.py "^[a-z]{2}[0-9]{3}\.(com|net)$" --limit 100^[a-z]{2}[0-9]{3}\.(com|net)$- 2 letters + 3 digits (e.g., ab123.com)^[a-z]{3}[0-9]{2}\.com$- 3 letters + 2 digits (e.g., abc12.com)^[a-z]{4}\.net$- 4 letters only (e.g., abcd.net)
To avoid rate limiting/blocking, configure HTTP proxies via .env (recommended) or proxy.txt:
Option 1: .env file (recommended) - JSON array
PROXY_LIST=[
{"host":"ip1","port":"8080","user":"username1","pass":"password1"},
{"host":"ip2","port":"8080","user":"username2","pass":"password2"},
{"host":"ip3","port":"8080","user":"username3","pass":"password3"}
]
Option 2: proxy.txt file (fallback)
# One proxy per line: ip:port:user:pass
ip1:8080:username1:password1
ip2:8080:username2:password2
Proxies are validated on startup (tested against google.com) and rotated automatically.
- Rate limit default: 5 requests/second
- Uses RDAP API (modern REST-based WHOIS alternative, no API key required)
- Results saved to output file as they're found
- Proxy priority:
.env→proxy.txt→ no proxy - Supported TLDs: com, net, org, info, biz, io, co, me, tv (others use rdap.org fallback)
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.