我正试图弄清楚如何使用VObject将VCard解析为Python字典。
vobj=vobject.readOne(string)
print vobj.behavior.knownChildren
这就是我得到的:
{'CATEGORIES': (0, None, None), 'ADR': (0, None, None), 'UID': (0, None, None), 'PHOTO': (0, None, None), 'LABEL': (0, None, None), 'VERSION': (1, 1, None), 'FN': (1, 1, None), 'ORG': (0, None, None), 'N': (1, 1, None), 'PRODID': (0, 1, None)}
如何使用我的VCard数据填充字典?
答案 0 :(得分:9)
您不想查看行为,您想要查看vobj
本身。行为是描述子项所需/期望的数据结构,以及如何将这些子项转换为适当的Python数据结构。
vobj
对象是一个vobject组件。它的contents属性是vobject ContentLines和可能的Components的字典,所以
vobject.contents
会给你一个对象词典。
如果您想要更加人性化的解析视图,请执行以下操作:
vobj.prettyPrint()
要访问个别孩子,请执行以下操作:
vobj.adr