IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau/Web Python Discussion :

Comment obtenir une adresse mac sur python


Sujet :

Réseau/Web Python

  1. #1
    Membre averti
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut Comment obtenir une adresse mac sur python
    salut
    jé creer une socket et jé voulu obtenir une adresse mac du pc
    voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    import socket
    info=socket.getaddrinfo(socket.gethostname(),None)
    print info
    print (" @IP : %s ")%(info[0][4][0])
    ce code permet d'obtenir tout sauf l@ mac
    ki konné alors la methode( )

  2. #2
    Membre Expert Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Par défaut
    sous windows tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import os
    ipconfig = os.popen('ipconfig /all').readlines()
    for ligne in ipconfig:
         if 'physique' in ligne.lower():
             print ligne.split(':')[1].strip()
    sous linux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    import os
    ifconfig = os.popen('ifconfig').readlines()
    for ligne in ifconfig:
         if 'ether' in ligne.lower():
             print ligne.split(':')[1].strip()
    C'est pas très propre, c'est pas flexble mais ça peut servir.
    Si tu trouve une methode plus generique, je suis preneur.

    Bon python

  3. #3
    Membre averti
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut thx
    MERCI PACIFICATOR , TU M' as bien aidé;
    thx

  4. #4
    Membre éclairé
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    Août 2004
    Messages
    767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 767
    Par défaut
    Bonjour,si je me trompe pas c'est l'adresse Mac réseau qui t'interresse!?

    dans ce cas, voici un code complet, chiner sur le net il y a queques temps.
    Je l'utilise tout les jours pour mes programmes.

    dis moi ce que tu en pense:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    #!/usr/bin/env python
     
    import ctypes
    import socket
    import struct
     
    host='127.0.0.1'
     
    def get_macaddress(host):
        """ Returns the MAC address of a network host, requires >= WIN2K. """
     
        # Check for api availability
        try:
            SendARP = ctypes.windll.Iphlpapi.SendARP
        except:
            raise NotImplementedError('Usage only on Windows 2000 and above')
     
        # Doesn't work with loopbacks, but let's try and help.
        if host == '127.0.0.1' or host.lower() == 'localhost':
            host = socket.gethostname()
     
        # gethostbyname blocks, so use it wisely.
        try:
            inetaddr = ctypes.windll.wsock32.inet_addr(host)
            if inetaddr in (0, -1):
                raise Exception
        except:
            hostip = socket.gethostbyname(host)
            inetaddr = ctypes.windll.wsock32.inet_addr(hostip)
     
        buffer = ctypes.c_buffer(6)
        addlen = ctypes.c_ulong(ctypes.sizeof(buffer))
        if SendARP(inetaddr, 0, ctypes.byref(buffer), ctypes.byref(addlen)) != 0:
            raise WindowsError('Retreival of mac address(%s) - failed' % host)
     
        # Convert binary data into a string.
        macaddr = ''
        for intval in struct.unpack('BBBBBB', buffer):
            if intval > 15:
                replacestr = '0x'
            else:
                replacestr = 'x'
            macaddr = ''.join([macaddr, hex(intval).replace(replacestr, '')])
     
        return macaddr.upper()
     
    if __name__ == '__main__':
        print 'Your mac address is %s' % get_macaddress('localhost')

  5. #5
    Membre averti
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Par défaut mon avi
    oui ces interessant et complet mé pour un debutant c vrément difficile a comprendre,merci en tout cas de ton assistance,

    la solution de PACIFICATR est plus simple et plus pratique..
    thx AMIGOS

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment obtenir l'adresse MAC d'une carte réseau déconnectée ?
    Par ZZZEvelyne dans le forum Web & réseau
    Réponses: 6
    Dernier message: 10/01/2014, 23h28
  2. Obtenir une adresse Mac
    Par babejules dans le forum Développement
    Réponses: 4
    Dernier message: 09/07/2011, 21h21
  3. [D7], Comment Obtenir l'adresse MAC
    Par iam dans le forum Delphi
    Réponses: 10
    Dernier message: 09/01/2007, 12h45
  4. Récupérer une adresse MAC sur l'entrée standard
    Par the_ionic dans le forum Réseau
    Réponses: 14
    Dernier message: 20/07/2006, 09h56
  5. Comment récupérer une adresse MAC ?
    Par psau dans le forum Développement
    Réponses: 7
    Dernier message: 19/07/2002, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo