python读取注册表中值的方法


Posted in Python onApril 08, 2013

在Python的标准库中,_winreg.pyd可以操作Windows的注册表,另外第三方的win32库封装了大量的Windows API,使用起来也很方便。不过这里介绍的是使用_winreg操作注册表,毕竟是Python自带的标准库,无需安装第三方库。

下面的例子是通过Python获取Windows XP下已经安装的补丁号。Windows的补丁号都在“HKEY_LOCAL_MACHINE\SOFTWARE\\Microsoft\\Updates”下,通过循环下面所有的目录节点,如果找到的名称符合正则表达式KB(\d{6}).*,则表示是一个补丁号。

从例子可以看出操作起来非常的简单和快速。

# -*- coding: utf-8 -*-
# 获取Windows的已打的补丁号

from _winreg import *
import re

def subRegKey(key, pattern, patchlist):
  # 个数
  count = QueryInfoKey(key)[0]
  for index in range(count):
    # 获取标题
    name = EnumKey(key, index)
    result = patch.match(name)
    if result:
      patchlist.append(result.group(1))
    sub = OpenKey(key, name)
    subRegKey(sub, pattern, patchlist)
    CloseKey(sub)

if __name__ == '__main__':
  patchlist = []
  updates = 'SOFTWARE\\Microsoft\\Updates'
  patch = re.compile('(KB\d{6}).*')
  key = OpenKey(HKEY_LOCAL_MACHINE, updates)
  subRegKey(key, patch, patchlist)
  print 'Count: ' + str(len(patchlist))
  for p in patchlist:
    print p
  CloseKey(key)

下面内容转自  Python Standard Library12.13 The _winreg Module
(Windows only, New in 2.0) The _winreg module provides a basic interface to the Windows registry database. Example 12-17 demonstrates the module.

Example 12-17. Using the _winreg Module
File: winreg-example-1.py

import _winreg

explorer = _winreg.OpenKey(
  _winreg.HKEY_CURRENT_USER,
  "Software\\Microsoft\\Windows\CurrentVersion\\Explorer"
  )

#list values owned by this registry key 
try:
  i = 0
  while 1:
   name, value, type= _winreg.EnumValue(explorer, i)
   print repr(name),
   i += 1
except WindowsError:
  print

value, type = _winreg.QueryValueEx(explorer, "Logon User Name")

print
print "user is", repr(value)


'Logon User Name' 'CleanShutdown' 'ShellState' 'Shutdown Setting'
'Reason Setting' 'FaultCount' 'FaultTime' 'IconUnderline'...

user is u'Effbot'

好了这篇文章就先介绍到这了

Python 相关文章推荐
Python获取DLL和EXE文件版本号的方法
Mar 10 Python
python基于pygame实现响应游戏中事件的方法(附源码)
Nov 11 Python
分享Python字符串关键点
Dec 13 Python
python利用urllib实现爬取京东网站商品图片的爬虫实例
Aug 24 Python
python中的decorator的作用详解
Jul 26 Python
Python制作词云图代码实例
Sep 09 Python
Python算法的时间复杂度和空间复杂度(实例解析)
Nov 19 Python
Python PIL库图片灰化处理
Apr 07 Python
python3.6使用SMTP协议发送邮件
May 20 Python
利用python绘制中国地图(含省界、河流等)
Sep 21 Python
UI自动化定位常用实现方法代码示例
Oct 27 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
Dec 14 Python
重命名批处理python脚本
Apr 05 #Python
Python编写的com组件发生R6034错误的原因与解决办法
Apr 01 #Python
Python中用Ctrl+C终止多线程程序的问题解决
Mar 30 #Python
python利用hook技术破解https的实例代码
Mar 25 #Python
利用python获得时间的实例说明
Mar 25 #Python
python 将字符串转换成字典dict
Mar 24 #Python
使用python提取html文件中的特定数据的实现代码
Mar 24 #Python
You might like
php实现的click captcha点击验证码类实例
2014/09/23 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
PHP使用栈解决约瑟夫环问题算法示例
2017/08/27 PHP
php实现socket推送技术的示例
2017/12/20 PHP
javascript 屏蔽鼠标键盘的几段代码
2008/01/02 Javascript
Jquery iframe内部出滚动条
2010/02/11 Javascript
jquery删除提示框弹出是否删除对话框
2014/01/07 Javascript
jquery实现带渐变淡入淡出并向右依次展开的多级菜单效果实例
2015/08/22 Javascript
基于Jquery制作图片文字排版预览效果附源码下载
2015/11/18 Javascript
JavaScript中利用构造器函数模拟类的方法
2017/02/16 Javascript
ES6新数据结构Set与WeakSet用法分析
2017/03/31 Javascript
bootstrap Table的一些小操作
2017/11/01 Javascript
vue组件jsx语法的具体使用
2018/05/21 Javascript
js限制input只能输入有效的数字(第一个不能是小数点)
2018/09/28 Javascript
如何使用 vue + d3 画一棵树
2018/12/03 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
2020/08/07 Javascript
[47:03]Ti4第二日主赛事败者组 LGD vs iG 2
2014/07/21 DOTA
[01:14:30]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第二场 8.20.mp4
2019/08/22 DOTA
Python中的filter()函数的用法
2015/04/27 Python
Linux CentOS7下安装python3 的方法
2018/01/21 Python
python实现聚类算法原理
2018/02/12 Python
Python数据抓取爬虫代理防封IP方法
2018/12/23 Python
Python集合基本概念与相关操作实例分析
2019/10/30 Python
python异常处理try except过程解析
2020/02/03 Python
Pycharm连接远程服务器过程图解
2020/04/30 Python
用python进行视频剪辑
2020/11/02 Python
Pytorch实验常用代码段汇总
2020/11/19 Python
HTML5适合的情人节礼物有纪念日期功能
2021/01/25 HTML / CSS
美国高街时尚品牌:OASAP
2016/07/24 全球购物
FILA德国官方网站:来自意大利的体育和街头服饰品牌
2019/07/19 全球购物
什么是索引指示器
2012/08/20 面试题
农民工创业典型事迹
2014/01/25 职场文书
标准化管理实施方案
2014/02/25 职场文书
家长会学生演讲稿
2014/04/26 职场文书
简历自我评价优缺点
2015/03/11 职场文书
python字符串的多行输出的实例详解
2021/06/08 Python