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 à l'essai
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Points : 16
    Points
    16
    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 expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    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
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Points : 16
    Points
    16
    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 : 48
    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
    Points : 891
    Points
    891
    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 à l'essai
    Inscrit en
    Février 2007
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 13
    Points : 16
    Points
    16
    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