MAC,使用python的以太网id

use*_*051 0 python ethernet mac-address

如何使用python获得本地网卡的正确MAC /以太网ID?Google/stackoverflow上的大部分文章都建议解析ipconfig/all(windows)和ifconfig(Linux)的结果.在Windows(2x/xp/7)'ipconfig/all'工作正常,但这是一个故障安全方法吗?我是linux的新手,我不知道'ifconfig'是否是获取MAC /以太网ID的标准方法.

我必须在python应用程序中实现一个基于本地MAC /以太网ID的许可证检查方法.

当您安装了VirtualBox或虚拟化应用程序(例如VirtualBox)时,会出现这种情况.在这种情况下,您将获得多个MAC /以太网ID.如果我必须使用解析方法,这不会是一个问题,但我不确定.

干杯

PRASHANT

Jak*_*yer 5

import sys
import os

def getMacAddress(): 
    if sys.platform == 'win32': 
        for line in os.popen("ipconfig /all"): 
            if line.lstrip().startswith('Physical Address'): 
                mac = line.split(':')[1].strip().replace('-',':') 
                break 
    else: 
        for line in os.popen("/sbin/ifconfig"): 
            if line.find('Ether') > -1: 
                mac = line.split()[4] 
                break 
    return mac      
Run Code Online (Sandbox Code Playgroud)

是一个跨平台功能,将为您返回答案.