使用 Python 提取 MAC 地址

我们知道 MAC 地址是硬件地址,这意味着它对于安装在我们 PC 上的网卡是唯一的。它始终是唯一的,这意味着本地网络上的任何两个设备都不可能具有相同的 MAC 地址。

MAC 地址的主要目的是为局域网 (LAN) 或其他网络上的每个节点提供唯一的硬件地址或物理地址。节点是指计算机或其他设备(例如打印机或路由器)将保持连接到网络的点。

方法 1

使用 uuid.getnode()

在此示例中,getnode() 可用于提取计算机的 MAC 地址。此函数在 uuid 模块中定义。

示例代码

复制代码
import uuid
print (hex(uuid.getnode()))

输出

复制代码
0x242ac110002L

方法 2

使用 getnode() + format() [这是为了更好的格式化]

示例代码

复制代码
import uuid
# 在每个 2 位数字后,连接 getnode() 的元素。
print ("格式化的 MAC 地址为 : ", end="")
print (':'.join(['{:02x}'.format((uuid.getnode() >> elements) & 0xff)
for elements in range(0,2*6,2)][::-1]))

输出

复制代码
The formatted MAC address is : 3e:f8:e2:8b:2c:b3

方法 3

使用 getnode() + findall() + re()[这是为了降低复杂性]

示例代码

复制代码
import re, uuid
# 在每个 2 位数字后,连接 getnode() 的元素。
# 使用正则表达式
print ("The MAC address in expressed in formatted and less complex way : ", end="")
print (':'.join(re.findall('..', '%012x' % uuid.getnode())))

输出

复制代码
The MAC address in expressed in formatted and less complex way : 18:5e:0f:d4:f8:b3

相关文章


有用资源

相关推荐
toolhow14 小时前
SelfAttenion自注意力机制
pytorch·python·深度学习
智航GIS14 小时前
6.2 while循环
java·前端·python
qq_3363139314 小时前
java基础-IO流(转换流)
java·开发语言·python
Stestack14 小时前
ssh批量机器免密操作
linux·python·ssh
a程序小傲14 小时前
得物Java面试被问:反射机制的原理和应用场景
java·python·面试
于越海14 小时前
学习小项目:用 Python 自动统计编程课绩点(5.0 制|百分制直算|重修取最高)
开发语言·笔记·python·学习·学习方法
xingzhemengyou114 小时前
Python GUI中常用的after
开发语言·python
航Hang*14 小时前
第五章:网络系统建设与运维(中级)——生成树协议
运维·服务器·网络·笔记·华为·ensp
郝学胜-神的一滴14 小时前
Python抽象基类与abc模块详解:优雅设计接口的利器
开发语言·python·程序人生
小南知更鸟14 小时前
前端静态项目快速启动:python -m http.server 4173 与 npx serve . 全解析
前端·python·http