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

相关文章


有用资源

相关推荐
Csvn1 天前
🌟 LangChain 30 天保姆级教程 · Day 13|OutputParser 进阶!让 AI 输出自动转为结构化对象,并支持自动重试!
python·langchain
cch89181 天前
Python主流框架全解析
开发语言·python
sg_knight1 天前
设计模式实战:状态模式(State)
python·ui·设计模式·状态模式·state
为何创造硅基生物1 天前
ESP32S3的RGB屏幕漂移问题
网络
好运的阿财1 天前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
张張4081 天前
(域格)环境搭建和编译
c语言·开发语言·python·ai
weixin_423533991 天前
【Windows11离线安装anaconda、python、vscode】
开发语言·vscode·python
周杰伦fans1 天前
C# required 关键字详解
开发语言·网络·c#
洛水水1 天前
深入理解网络编程核心:Reactor、IOCP 与异步 IO 模型详解
网络·iocp
Ricky111zzz1 天前
leetcode学python记录1
python·算法·leetcode·职场和发展