• Email : contact@refbax.com

Comment connaître les DNS d’un site avec python ?

📢 Image qui illustre un article sur le : fonction, type, dnspython, pouvez utiliser, enregistrements type, dns.resolver, dns.resolver.Resolver(), resolver.query(domain), [record.to_text(), print(get_dns_records("google.com")), print(get_dns_records("example.com")), print(get_dns_records("nonexistent.com")), dns.rdtypes.ANY.A.A,, dns.rdatatype.MX, dns.rdatatype.NS, resolver.query(domain,, dns.rdatatype.MX), print(get_mx_records("google.com")), alt3.aspmx.l.google.com.",, alt2.aspmx.l.google.com.",, alt1.aspmx.l.google.com.",, alt4.aspmx.l.google.com.",, alt5.aspmx.l.google.com."], print(get_mx_records("example.com")), mail.example.com."]
Facebook
Twitter
LinkedIn
Temps de lecture : < 1 minute

Pour connaître les DNS (Domain Name System) d’un site Web en Python, vous pouvez utiliser la bibliothèque dnspython et la fonction query.

Tout d’abord, il faut utiliser une bibliothèque qui permet de réaliser des requêtes DNS (Domain Name System). Une option possible est la bibliothèque dnspython. Pour l’installer, exécutez cette commande :

pip install dnspython

Voici un exemple de code qui montre comment faire pour connaître les DNS :

import dns.resolver

def get_dns_records(domain):
    resolver = dns.resolver.Resolver()
    response = resolver.query(domain)
    return [record.to_text() for record in response]

# Exemples d'utilisation
print(get_dns_records("google.com"))  # ["172.217.167.206", "172.217.167.174"]
print(get_dns_records("example.com"))  # ["93.184.216.34"]
print(get_dns_records("nonexistent.com"))  # []

La fonction query de dnspython envoie une requête DNS pour obtenir les enregistrements du type A (adresses IP) associés au domaine donné. Si des enregistrements du type A sont trouvés, la fonction retourne une liste d’objets dns.rdtypes.ANY.A.A, et vous pouvez utiliser la méthode to_text de chaque objet pour obtenir l’adresse IP sous forme de chaîne de caractères. Si aucun enregistrement du type A n’est trouvé, la fonction retourne une liste vide.

Notez que la fonction query de dnspython peut également être utilisée pour obtenir d’autres types d’enregistrements DNS, comme les enregistrements du type MX (serveurs de messagerie) ou du type NS (serveurs de noms). Vous pouvez utiliser la constante dns.rdatatype.MX ou dns.rdatatype.NS en tant que second argument de la fonction query pour obtenir ces types d’enregistrements. Par exemple :

import dns.resolver

def get_mx_records(domain):
    resolver = dns.resolver.Resolver()
    response = resolver.query(domain, dns.rdatatype.MX)
    return [record.to_text() for record in response]

# Exemples d'utilisation
print(get_mx_records("google.com"))  # ["30 alt3.aspmx.l.google.com.", "20 alt2.aspmx.l.google.com.", "10 alt1.aspmx.l.google.com.", "40 alt4.aspmx.l.google.com.", "50 alt5.aspmx.l.google.com."]
print(get_mx_records("example.com"))  # ["10 mail.example.com."]

Laisser un commentaire

Sur le même thème 🤩

Qui suis-je ! 👨‍💻

Enfilez-votre cape

Apprenez le webmarketing et le code grâce à nos différentes ressources et améliorez la visibilité de votre site internet, grâce à nos outils SEO.

refbax superhero bas