I created a similar service (migtyname.com and separate personal toolkit) in the past for checking name combinations and checked the domain name availability using custom code that costs nothing.
If this saves you money then I'm happy.
so drumroll..... here you are (whois.py is my project name for the file)
import socket
tld = 'whois.verisign-grs.com'
def whois(domain):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((tld, 43))
str = domain+'\n'
s.send(str.encode())
buffer = ''
while True:
data = s.recv(1024).decode()
if data:
buffer += data
else:
break
return buffer
def available(domain):
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((tld, 43))
str = domain+'\n'
s.send(str.encode())
buffer = ''
data = s.recv(1024).decode()
if "No match for" in data:
return True
return False