Sziasztok!
Egy rendkívül érdekes jelenség jött elő nálam. Az lmiwbem modul segítségével szeretném lekérni egy adott osztályhoz tartozó példányok összes tulajdonságát.
Egy CIMInstance-ot lekérve annak tulajdonságain akarok végigiterálni és azokkal valamilyen műveletet végrehajtani (pl kiíratni). Ez mind jól működik egészen addig, amíg az a Property nem egy datetime típusú CIMProperty, aminek az értéke nem None, ekkor ugyanis a property-n value-t hívva a következő hibát kapom:
Traceback (most recent call last):
File "analyze_instances.py", line 25, in empty_percentage
if item_property == None or considered_empty(item_property.value):
File "/usr/lib/python3.4/site-packages/lmiwbem/lmiwbem_types.py", line 67, in __init__
if isinstance(dtarg, basestring):
NameError: name 'basestring' is not defined
Azért furcsa a dolog, mert egyrészt YAWN-ban megnézve azoknál és csak azoknál a tulajdonságoknál történik ez amiknek a típusa CIMDateTime (ezt furcsa mód hiba nélkül le lehet kérdezni a property.type-al) és az értékük nem None. Próbáltam random osztályokat lekérdezgetni, de sehol sem volt olyan hogy a property értéke nem None volt és a szkript ne szállt volna el, vagy hogy nem None-nál elszállt volna.
Mi okozhatja ezt? Lehet hogy valami nagyon triviális dolgot nézek be, de egyszerűen képtelen vagyok rájönni az okára.
A segítségeteket előre is köszönöm!