我已经成功编写了一个 Powershell 脚本,它:
- 查询AD获取计算机列表
- 通过WMI查询每台计算机,获取软硬件信息
- 将收集到的数据插入 MySQL 数据库。
该脚本运行良好,但我不喜欢它的实现方式。它是程序性的,并且有很多代码重复,每次我需要更改某些东西时都会造成混乱。
现在,我想问你的是:使用 OOP 在 python 中实现它的最简洁的方法是什么?我想到了类似的东西(伪代码):
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 连接吗?
非常感谢,对不起我的英语不好