searchdomain.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import whois
  2. from concurrent.futures import ThreadPoolExecutor
  3. import os,sys,re,json
  4. # import requests
  5. import logging
  6. class SearchDomain(object):
  7. """search avaliable domain and save result"""
  8. def __init__(self):
  9. super(SearchDomain,self).__init__()
  10. def crawl(self, domain:str)->None:
  11. '''
  12. 检测域名是否可用
  13. :params domain 域名:
  14. :return true or false'''
  15. res=False
  16. try:
  17. whi = whois.whois(domain)
  18. res= False
  19. except Exception as e:
  20. if(str(e).index("No match")==0):
  21. res= True
  22. else:
  23. res= False
  24. self.saveRes(domain,res)
  25. def saveRes(damin:str, res:bool):
  26. # mysql.save()
  27. # file.save()
  28. pass
  29. def run(self):
  30. '''begin search domain'''
  31. with open("res/res.json","w",encoding="utf8") as file:
  32. pool=ThreadPoolExecutor(max_workers=10)
  33. for i in range(100):
  34. pool.submit(self.crawl, domain)
  35. if __name__ == '__main__':
  36. sd = SearchDomain()
  37. sd.run()