dnspython 라이브러리로 도메인 이름 분석 검색 스크립트 작성

1606 단어
dnspython을 먼저 설치하세요.
pip install dnspython

스크립트 본문
# -*- coding: UTF-8 -*-
#!/usr/bin/env  python

import sys
from dns import resolver

if len(sys.argv) == 2:
    # , CNAME 
    try:
        ans = resolver.query(sys.argv[1], "A")
        for dns in ans.response.answer:
            print(dns)

    except BaseException:
        ans = resolver.query(sys.argv[1], "CNAME")
        for dns in ans.response.answer:
            dns = (str(dns))
            dnstxt = dns.split(' ')
            dnstxt = dnstxt[4:]
            ans_res = resolver.query(dnstxt[0], "CNAME")
            for result in ans_res.response.answer:
                print(result)
    else:
        pass


elif len(sys.argv) == 3:
    # CNAME, CNAME 
    try:
        ans = resolver.query(sys.argv[1],sys.argv[2])
        if sys.argv[2] == "CNAME" or sys.argv[2] == "cname":
            for dns in ans.response.answer:
                dns = (str(dns))
                dnstxt = dns.split(' ')
                dnstxt = dnstxt[4:]
                ans_res = resolver.query(dnstxt[0], "CNAME")
                for result in ans_res.response.answer:
                    print(result)
        else:
            for dns in ans.response.answer:
                print(dns)

    except BaseException:
        ans = resolver.query(sys.argv[1], "A")
        for dns in ans.response.answer:
            print(dns)
    else:
        pass

else:
    print("Example useage: ./dnsQuery.py baidu.com/baidu.com A|CNAME|NS|MX")

좋은 웹페이지 즐겨찾기