python 读取机器信息
本人最近新学python ,用到关于机器的相关信息,经过一番研究,从网上查找资料,经过测试,总结了一下相关的方法.
  # -*- coding: UTF8 -*-
  import os
  import win32api
  import datetime
  import platform  
  import getpass
  import socket
  import uuid
  import _winreg
  import re
1、读取注册表获取操作系统版本名称
  def GetOsName():
        '''操作系统名称'''
        keyPath = r"SOFTWARE\Microsoft\Windows NT\CurrentVersion"
        each_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, keyPath, 0, _winreg.KEY_READ)
        OsName,REG_SZ =  _winreg.QueryValueEx(each_key, "ProductName")
        return OsName
2、读取注册表获取操作系统当前版本号
  def GetOsVersion():
        '''操作系统版本'''
        keyPath = r"SOFTWARE\Microsoft\Windows NT\CurrentVersion"
        each_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, keyPath, 0, _winreg.KEY_READ)
        OsVersion,REG_SZ =  _winreg.QueryValueEx(each_key, "CurrentVersion")
        return OsVersion
3、读取注册表获取操作系统的型号
  def GetOsModel():
        '''操作系统型号'''
        keyPath = r"SOFTWARE\Microsoft\Windows NT\CurrentVersion"
        each_key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, keyPath, 0, _winreg.KEY_READ)
        OsModel,REG_SZ =  _winreg.QueryValueEx(each_key, "EditionID")
        return OsModel
4、
  #根据文件的全路径获取文件的版本号
  def GetFileVersion(filePath):
        info = win32api.GetFileVersionInfo(filePath, os.sep) 
        ms = info['FileVersionMS']
        ls = info['FileVersionLS']  
        version = '%d.%d.%d.%04d' % (win32api.HIWORD(ms), win32api.LOWORD(ms), win32api.HIWORD(ls), win32api.LOWORD(ls))
        return version
5、通过platform模块读取机器的其它信息
  def get_architecture():
        '''获取操作系统的位数'''
        return platform.architecture()
  def get_machine():
        '''计算机类型'''
        return platform.machine()
  def get_node():
        '''计算机的网络名称'''
        return platform.node()
  def get_processor():
        '''计算机处理器信息'''
        return platform.processor()
  def get_system():
        '''获取操作系统类型'''
        return platform.system()
  def get_TotalInfo():
        '''汇总信息'''
        return platform.uname()
  def get_localDataPath():
        '''当前用户路径'''
        return os.path.expanduser('~')
  def get_UserName():
        '''当前用户名'''
        return getpass.getuser()
  def get_ComputerName1():
        '''获取机器名称'''
        return platform.node()()
  def get_ComputerName():
        '''获取机器名称'''
        return socket.gethostname()
  def get_AddressIp():
        '''获取本机IP'''
        return socket.gethostbyname(get_ComputerName())
  def get_Mac():
        '''获取MAC地址'''
        mac=uuid.UUID(int = uuid.getnode()).hex[-12:] 
        return ':'.join(mac[e:e+2].upper() for e in xrange(0,11,2))
  def show_os_all_info():
        '''打印os的全部信息'''
    print('操作系统的位数 : [{}]'.format(get_architecture()))
        print('计算机类型 : [{}]'.format(get_machine()))
        print('计算机的网络名称 : [{}]'.format(get_node()))
        print('计算机处理器信息 : [{}]'.format(get_processor()))
        print('操作系统类型 : [{}]'.format(get_system()))
        print('汇总信息 : [{}]'.format(get_TotalInfo()))
        print('当前用户路径: [{}]'.format(get_localDataPath()))
        print('当前用户名: [{}]'.format(get_UserName()))
        print('机器名称: [{}]'.format(get_ComputerName()))
        print('机器IP: [{}]'.format(get_AddressIp()))
        print('MAC地址: [{}]'.format(get_Mac()))
python 读取机器信息的更多相关文章
- python获取机器信息脚本(网上寻找的)
		获取机器信息(待测试) # -*- coding: UTF-8 -*- import psutil import json import os import socket import struct ... 
- python 读取域名信息
		#!/usr/bin/env python # _*_coding:utf-8_*_ import OpenSSL from OpenSSL import crypto from dateutil i ... 
- 用python读取csv信息并写入新的文件
		import csv fo = open("result.txt", "w+") reader = csv.reader(open('test.csv')) f ... 
- 使用Python读取Mp3的标签信息
		什么是ID3 MP3是音频文件最流行的格式,它的全称是 MPEG layer III.但是这种格式不支持对于音频内容的描述信息,包括歌曲名称.演唱者.专辑等等. 因此在1996年,Eric Kemp在 ... 
- python读取excel一例-------从工资表逐行提取信息
		在工作中经常要用到python操作excel,比如笔者公司中一个人事MM在发工资单的时候,需要从几百行的excel表中逐条的粘出信息,然后逐个的发送到员工的邮箱中.人事MM对此事不胜其烦,终于在某天请 ... 
- python读取文件内的IP信息 练习
		代码如下: #导包 import fileinput import re def readArw(): for line in fileinput.input(r"G:/raw.txt&qu ... 
- python 读取指定文件信息并拼接
		python 读取指定文本并拼接成指定的格式 # -*- coding: utf-8 -*- import os def getHelloWorld(path, fileName): "&q ... 
- Python 读取照片的信息:拍摄时间、拍摄设备、经纬度等,以及根据经纬度通过百度地图API获取位置
		通过第三方库exifread读取照片信息.exifread官网:https://pypi.org/project/ExifRead/ 一.安装exifreadpip install exifread ... 
- python读取文本文件
		1. 读取文本文件 代码: f = open('test.txt', 'r') print f.read() f.seek(0) print f.read(14) f.seek(0) print f. ... 
随机推荐
- HTML5表单内元素的required属性
			当表单内元素(如input.textarea)中有required属性并且值不为false的时候,则该字段不能为空,否则提交失败. <input type="text" au ... 
- GitHub 建立远程仓库
			终端所有信息: Last login: Fri Aug 14 08:58:01 on console wuxiaoyuan:~ lan$ ls -al ~/.ssh ls: /Users/lan/.s ... 
- PHPBB 学习
			Fixing incorrect cookie settings 设置PHPBB的cookie 
- PHP之数组函数归类
			数组之所以强大,除了本身声明.存储方式灵活,它还有坚强后盾:一系列功能各异的数组处理函数.就像一只军队,除了领队将军本身能征善战,指挥英明之外,还有一群不怕死.忠实于他的士兵,这样才能显得整体的强大. ... 
- Mongodb集群节点故障恢复场景分析
			http://blog.csdn.net/zhangzhaokun/article/details/6299527 一个适当配置的Mongodb分片集群是没有单点故障. 本文描述了分片集群中存在的几种 ... 
- linux远程执行命令
			经常要部署多台服务器上面的应用,如果一个个机器的登录太麻烦. 所有就想到编写一个脚本来部署不同的服务器 前提条件: 配置ssh免登陆 (1)命令行执行登录并且在目标服务器上执行命令 ssh user@ ... 
- Extjs搜索域使用
			要在使用的panel在预先加载搜索域类requires : ["Ext.ux.form.SearchField"], 
- 信鸽推送.net 服务端代码
			//推送代码 private void send() { #region 安卓推送 XingeApp app = new XingeApp("accessId", "se ... 
- 检测PC端和移动端的方法总结
			正在苦逼的实习中,昨天公司让做一个页面,涉及到检测终端的问题,如果是手机设备,就跳转到指定的网页上,以前写响应式布局只要用@media screen来实现布局的差异化适应,但是现在不仅仅是布局,还要针 ... 
- 重置mysql管理员密码
			重置管理员密码 1.关闭mysql 2.开启mysql,跳过授权表mysql服务 提示:如果此步骤操作成功,那么任何用户登陆MySQL都不需要用户名与密码 保持此窗口不能关闭 3.重新cmd,登陆 m ... 
