使用 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 分钟前
【LangGraph框架入门级】4. 支持联网搜索的智能代理系统
python·ai编程·langgraph
曼巴UE512 分钟前
UE 属性同步
网络·c++·ue5
奇树谦18 分钟前
本地FastDDS+远端MQTT转发(多主机数据隔离)架构设计与落地
运维·网络
运维@小兵21 分钟前
安装Pycharm并破解
ide·python·pycharm
HackTwoHub21 分钟前
REA逆向一切!渗透逆向新利器、MCP 驱动全栈逆向方案,解析原生二进制、EXE、APK,高效挖掘程序底层漏洞
网络·安全·web安全·网络安全·系统安全
冬、不眠的夜27 分钟前
Nuitka 将 python 程序编译成 exe 指南
开发语言·python
范中勤42 分钟前
Python Asyncio 协程与 LLM 异步并发原理技术文档(与 Java 对比|彻底澄清所有误区)
python·llm·协程·并发编程·asyncio
Dmz丶43 分钟前
前端转 AI 100 天 Day 21:FastAPI 入门——从命令行到 HTTP 服务
python
QQ142207844944 分钟前
基于 Flask 的「自动任务控制台」设计与踩坑实录
后端·python·flask
吴佳浩 Alben1 小时前
一文讲透推理引擎性能指标:TTFT、TPOT、KV命中率、并发,到底对应 vLLM / SGLang 的哪个参数?
人工智能·python·语言模型·架构·ai编程·vllm·sglang