我有一个过程需要我识别不同的机器,而且我不确定什么是最好的方法。
我不想将该ID保存在文本文件或其他内容中,但是我想在每次需要时从硬件生成该ID(以防带有ID的文本被删除或其他原因)
我检查了UUID,看来还可以,但是我不确定。
我看过 uuid.getNode(),但是我有两个问题:
如果您有更好的方法来获取机器的唯一ID,那么我可以每次生成该ID,而不必担心会删除它或其他东西-我很高兴听到它。我所有尝试找到东西的尝试都以失败告终。
谢谢。
最佳答案
您可以使用dmidecode
。
Linux:
import subprocess
def get_id():
return subprocess.Popen('hal-get-property --udi /org/freedesktop/Hal/devices/computer --key system.hardware.uuid'.split())
Windows:
注意:需要dmidecode for Windows
import subprocess
def get_id():
return subprocess.Popen('dmidecode.exe -s system-uuid'.split())
跨平台:
注意:需要dmidecode for Windows
import subprocess
import os
def get_id():
if 'nt' in os.name:
return subprocess.Popen('dmidecode.exe -s system-uuid'.split())
else:
return subprocess.Popen('hal-get-property --udi /org/freedesktop/Hal/devices/computer --key system.hardware.uuid'.split())
关于python - 使用Python获取唯一的硬件ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38328176/