Két lehetőséged van: vagy a Python 3 támogatással rendelkező lmiwbem modult használod, vagy a wbemclit. Szerintem az előbbivel könnyebb dolgozni, a GitHub oldalon találhatsz is hozzá példákat, illetve API dokumentációt. Szóval én ezt ajánlom.
Az lmiwbem esetén érdemes tudni, hogy az EnumerateInstances metódus CIMInstance objektumokat tartalmazó listával tér vissza. Ha kicsit keresgélsz a dokumentációban, vagy megnézel pár példát, akkor viszonylag gyorsan rá lehet jönni, hogy ebből az objektumból pontosan hogyan is tudsz kinyerni bizonyos attribútumokat.
Kezdetnek, nézd meg ezt: CIMInstance
Az xml összeállítással kapcsolatban azt tudom elmondani, hogy alapvetően az "önálló ügyeskedés" az elvárt, ahogy te is említed. A feladatnak többféleképpen neki lehet kezdeni, számos megoldás létezik. Amennyiben az általatok kitalált algoritmus a problémára nem feltétlenül a legoptimálisabb, nem fog gondot okozni, ezt nem nézzük szigorú szemmel (nyilván ne essünk azért túlzásokba).