【发布时间】:2012-04-18 07:00:46
【问题描述】:
我已经成功编写了一个 Powershell 脚本:
- 查询AD获取计算机列表
- 通过 WMI 查询每台计算机以获取软件/硬件信息
- 将收集的数据插入 MySQL 数据库。
脚本运行良好,但我不喜欢它的实现方式。这是程序性的,并且有很多代码重复,每次我需要更改某些内容时都会造成混乱。
现在,我想问你的是:在 python 中使用 OOP 实现它的最简洁的方法是什么?我想到了类似的东西(伪代码):
Class ADquery
function get_computers( UO ): return a list of computers in the specified UO
Class Computer
constructor( computername )
function query(): connect to the computer and pull the info through WMI
function print(): print the collected info to the console (debug)
property RAM
property CPU
...
问题:
为了将收集的数据保存到数据库中,我是否必须创建另一个对象(例如数据库)并将计算机对象传递给他或向计算机类添加成员函数(例如 save_db() ) ?
如果我选择第二个选项,当我处理多个对象时不会导致大量 MySQL 连接?
非常感谢,抱歉我的英语不好
【问题讨论】:
-
在codereview.stackexchange.com 上发布您的完整脚本(或其关键部分)并请人们改进它可能会更有用。
-
感谢@thg435,但我还没有写一行新脚本
标签: python coding-style wmi implementation