python wmi读取网卡MAC地址、CPU序列号、硬盘序列号、主板序列号、BIOS序列号

序列号相当于电脑的身份证号,是硬件出厂时,厂商写在硬件里的唯一识别码,具有唯一性和不可修改性。很多正版软件以此来识别用户电脑,限制安装。

import uuid
import wmi
def get_mac_address(): #网卡MAC地址,是可以被修改的
    mac=uuid.UUID(int = uuid.getnode()).hex[-12:] 
    return ":".join([mac[e:e+2] for e in range(0,11,2)])

def get_cpu_id(): #CPU序列号,唯一且无法修改
	c = wmi.WMI ()
	ID_list=[]
	for cpu in c.Win32_Processor(): 
	    ID_list.append(cpu.ProcessorId.strip())
	return ID_list[0]

def get_disk_id(): #硬盘序列号,唯一且无法修改	
	c = wmi.WMI ()
	ID_list=[]
	for physical_disk in c.Win32_DiskDrive():
		ID_list.append(physical_disk.SerialNumber)
	return ID_list[0]
	
def get_board_id(): #主板序列号,唯一且无法修改	
	c = wmi.WMI ()
	ID_list=[]
	for board in c.Win32_BaseBoard():
		ID_list.append(board.SerialNumber)
	return ID_list[0]

def get_bios_id(): #BIOS序列号,唯一且无法修改
	c = wmi.WMI ()
	ID_list=[]
	for bios in c.Win32_BIOS():
		ID_list.append(bios.SerialNumber)
	return ID_list[0]

本人电脑每个设备只有一个,因此为了简便,返回的是列表的第一项

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值