i've following 10 lines in a .xml file :
<EmpInfo Location="Pune" Name="John">
<EmpInfo>
<EmpInfo Location="Pune" Name="Sam">
<EmpInfo>
<EmpInfo Location="Pune" Name="George">
<EmpInfo>
<EmpInfo Location="Mumbai" Name="Sera">
<EmpInfo>
<EmpInfo Location="Delhi" Name="Jon">
<EmpInfo>
<EmpInfo Location="Mumbai" Name="Josh">
<EmpInfo>
<EmpInfo Location="Pune" Name="Alex">
<EmpInfo>
<EmpInfo Location="Mumbai" Name="Lee">
<EmpInfo>
<EmpInfo Location="Delhi" Name="Ron">
<EmpInfo>
<EmpInfo Location="Mumbai" Name="Sara">
<EmpInfo>
i've tried this way.. but it's not working :
counter=0
infoDict={}
pointers = header.getElementsByTagName('EmpInfo')
for pointer in pointers:
namelist=[]
pointerobj={}
if counter==0:
name=pointer.getAttribute("Location")
basename=pointer.getAttribute("Name")
namelist.append(name)
basenamelist.append(basename)
else:
basename=pointer.getAttribute("Location")
if pointer.getAttribute("Location") in basenamelist:
name=pointer.getAttribute("Name")
namelist.append(name)
else:
name=pointer.getAttribute("Name")
namelist.append(name)
#basenamelist.append(basename)
print("Location:: ",basename)
print("Name:: ",namelist)
counter=counter+1
infoDict.update({basename:namelist})
I want result to get printed in dictionary like :
infoDict = {
Pune : [John,Sam,George,Alex],
Mumbai : [Sera,Josh,Lee,Sara],
Delhi : [Jon,Ron]
}
I'm trying to insert this result in mongoDB. in dictionary key must be location and value should be array. my actual application is very long but i want to complete this small module in it first.