Amazing-Python-Scripts

Форк
0
44 строки · 967.0 Байт
1
# DNS VERIFIER
2

3
import json
4
import sys
5
from collections import OrderedDict
6

7
import dns.resolver
8

9

10
def checker(dns_val=None) -> OrderedDict:
11

12
    ip_values = None
13
    avail = False
14

15
    if dns_val is None:
16
        raise ValueError("Sorry DNS not found, DNS is needed")
17
    if isinstance(dns_val, str) is False:
18
        raise TypeError("Sorry, \'DNS\' must be type \'str\'")
19
    try:
20
        output = dns.resolver.resolve(dns_val, 'A')
21
        ip_values = [ipval.to_text() for ipval in output]
22
    except dns.resolver.NXDOMAIN:
23
        avail = True
24

25
    return OrderedDict([
26
        ("DNS", dns_val),
27
        ("IP", ip_values),
28
        ("AVAIL", avail),
29
    ])
30

31

32
if __name__ == '__main__':
33
    dns_val = None
34
    option = None
35
    print("Enter the DNS:")
36
    dns_val = input()
37
    try:
38
        response = checker(dns_val=dns_val)
39
    except Exception as err:
40
        print(f"error: {err}")
41
        sys.exit(1)
42

43
    print(json.dumps(response, indent=4))
44
    sys.exit(0)
45

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.