每台计算机都需要网络接口卡(NIC)才能成为网络或Internet的一部分。分配给该卡的地址称为MAC地址。MAC地址的值对于每个NIC都是唯一的。它也适用于其他可以连接到LAN或Internet的设备,例如打印机和路由器。
要找到MAC地址,我们使用以下方法之一。
uuid模块具有getnode()
以十六进制格式为我们提供MAC地址的功能。
import uuid print(hex(uuid.getnode()))
运行上面的代码给我们以下结果-
0xfee14ef7a96
getnode()
+format()
我们使用这种方法格式化结果以提高可读性。在这里,我们将每个节点的元素连接到2位数字之后,并用冒号分隔它们来表示它们。
import uuid print ("Formatted MAC address : ") print (':'.join(['{:02x}'.format((uuid.getnode() >> elements) & 0xff) for elements in range(0,2*6,2)][::-1]))
运行上面的代码给我们以下结果-
Formatted MAC address : de:7a:ea:a9:a5:96
getnode()
+ findall()
+re()
我们使用与前一种方法相同的方法,但是使用正则表达式模块(re)格式化结果。这使得结果复杂得多。
import re,uuid print ("Formatted MAC address : ") print (':'.join(re.findall('..', '%012x' % uuid.getnode())))
运行上面的代码给我们以下结果-
Formatted MAC address: 0f:ee:14:ef:7a:96
问题内容: 我正在寻找一种方法(使用python)从本地网络上的设备获取地址。 地址是已知的。 目标是建立一个脚本,该脚本将定期轮询IP地址数据库,以确保mac地址没有更改,如果有更改,则将电子邮件警报发送给我自己。 问题答案: 用Python回答问题取决于您的平台。我没有Windows,因此以下解决方案可在我写过的Linux机器上使用。对正则表达式进行小的更改将使其在OS X中运行。 首先,您必
问题内容: 如何使用PHP或javascript获取MAC地址… 问题答案: 如果客户端正在运行Windows,并允许您安装ActiveX控件,则可以使用javascript获取客户端的MAC地址。 http://www.eggheadcafe.com/community/aspnet/3/10054371/how-to-get-client-mac- address.aspx http://co
问题内容: 我知道您可以使用Java 6来做到这一点。但是我要部署的环境仅限于Java 5。 有谁知道如何在Java 5或更早版本中执行此操作?非常感谢。 问题答案: Java 5中的标准方法是启动一个本机进程来运行ipconfig或ifconfig解析OutputStream以获得您的答案。 例如:
我想要得到机器的MAC地址..但下面写的代码只显示MAC地址时,互联网连接到我的机器,否则它将返回空...我用的是Windows7
问题内容: 当前,提到的用于获取MAC地址的所有解决方案始终使用eth0。但是,如果接口不是以eth0开头,该怎么办呢?同样在OS X上,接口名称也不同。 eth0接口也可能存在但未使用。即不活跃,它没有一个IP。 因此,有没有一种方法可以获取第一个可用接口Active的MAC地址(即,它具有一个inet地址,我什至不希望有人拥有inet6)。 例如 注意:我更改了输出值。 因此,在这种情况下,我
问题内容: 我正在使用Ubuntu。如何使用C程序获取本机或接口eth0的MAC地址。 问题答案: 您需要遍历计算机上所有可用的接口,并与标志一起使用以获取mac地址。mac地址将以6字节的二进制数组形式获取。您还希望跳过环回接口。