python - obtenir l'adresse MAC sous Windows
Je suis sur Windows 7 et la version 2.6 de Python. Je voudrais obtenir l'adresse MAC de mon interface réseau.
J'ai essayé d'utiliser le wmi
module:
def get_mac_address():
c = wmi.WMI ()
for interface in c.Win32_NetworkAdapterConfiguration (IPEnabled=1):
return interface.MACAddress
Cependant, a connu des problèmes lors de l'exécution, sans connexion internet.
J'ai essayé d'utiliser le uuid
module:
from uuid import getnode
print getnode()
Toutefois, la valeur de retour est de 48 octets de la représentation de l'adresse MAC
66610803803052
1) Combien devrais-je convertir le nombre donné à ff:ff:ff:ff:ff:ff
format?
2) Est-il une meilleure façon d'obtenir l'adresse MAC?
C'est assez aléatoire que MAC vous obtenez l'UUID façon (pour moi, il donne le MAC WLAN).
OriginalL'auteur oridm | 2015-03-08
Vous devez vous connecter pour publier un commentaire.
Cela fonctionne:
Ou:
Ou:
Tout d'abord convertir le nombre en hexadécimal, pad à 12 caractères, puis de le convertir en une série de deux char cordes, puis se joindre à eux avec des points. Cependant, cela dépend de l'exactitude de votre MAC-trouver la méthode.
OriginalL'auteur matsjoyce
Essayer cela avec Python 2:
Si vous êtes à l'aide de Python 3, essayez ceci:
mac_num = hex(uuid.getnode()).replace('0x', '').replace('L', '')
mac_num = mac_num.zfill(12)
OriginalL'auteur lqhcpsgbl
À l'aide de Python 3 spécifications:
Ou
OriginalL'auteur Unai Sainz de la Maza
Adresse Mac d'une interface donnée nom:
https://gist.github.com/JayZar21/6f3fd031430d865d208c29ba55ce7ccb
Exemple d'utilisation:
mac_str = ''.join(['%02x:' % ord(char) for char in info[18:24]])[:-1] return int(mac_str.translate(None, ":.- "), 16)
OriginalL'auteur J_Zar
code:
De sortie:
OriginalL'auteur Shifullah Ahmed Khan
Vous ne pouvez pas compter sur les
uuid
module, Si vous avez plusieurs interfaces réseau.Il y a une 3ème partie de la bibliothèque qui fonctionne de la croix-plate-forme appelée getmac
Installation:
Utilisation:
OriginalL'auteur Jossef Harush