获取python中计算机的唯一id
我需要为我在市场上分发的每个软件生成许可证。我将在我的服务器数据库中存储该许可证和计算机唯一id。 所以获取python中计算机的唯一id,python,python-3.x,license-key,Python,Python 3.x,License Key,我需要为我在市场上分发的每个软件生成许可证。我将在我的服务器数据库中存储该许可证和计算机唯一id。 所以 当前计算机的唯一Id是什么 如何在Python-3中获取它 我在谷歌上搜索过它,但我得到的大多数答案都是使用MAC Id,现在任何人都可以更改MAC Id。因此,在Python-3中无法更改且可见的最佳Id是什么 import subprocess def GetUUID(): cmd = 'wmic csproduct get uuid' uuid = str(subpro
我在谷歌上搜索过它,但我得到的大多数答案都是使用MAC Id,现在任何人都可以更改MAC Id。因此,在Python-3中无法更改且可见的最佳Id是什么
import subprocess
def GetUUID():
cmd = 'wmic csproduct get uuid'
uuid = str(subprocess.check_output(cmd))
pos1 = uuid.find("\\n")+2
uuid = uuid[pos1:-15]
return uuid
print(GetUUID())
很多Anwser都是如此的天真和复杂,我在谷歌上搜索了很多,却找不到令人满意的答案。因此,我的结论如下:
- 对于UUID:
from wmi import WMI from sys import platform def get_device_uuid(): if platform == "linux" or platform == "linux2": # linux elif platform == "darwin": # OS X elif platform == "win32": return WMI().Win32_ComputerSystemProduct()[0].UUID
- 对于设备名称:
def get_device_name(): if platform == "linux" or platform == "linux2": my_system = platform.uname() return '{}-{}'.format(my_system.system, my_system.node) elif platform == "darwin": my_system = platform.uname() return '{}-{}'.format(my_system.system, my_system.node) elif platform == "win32": a = WMI().Win32_ComputerSystemProduct()[0] return '{}-{}'.format(a.Manufacturer, a.Name)