使用 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

相关文章


有用资源

相关推荐
傲笑风7 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
weixin_416667967 小时前
【无标题】
运维·服务器·网络
维基框架7 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
予昊7 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
上海云盾-小余9 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
戴西软件10 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
芯盾时代10 小时前
《金融业网络安全管理办法(征求意见稿)》全条款深度拆解(三)
网络·安全·网络安全
米饭不加菜10 小时前
ESP-01S通过TCP直接与手机建立通信
网络·tcp/ip·智能手机
闲云野鹤在人间10 小时前
OpenStack架构介绍和安装流程
linux·网络·架构·openstack
xx~t11 小时前
嵌入式——Linux软件编程——网络1
linux·c语言·网络·vscode·网络协议