Sunday, 11 October 2015

XML PARSING IN PYTHON USING MINIDOM

parsing an xml in python using minidom

xml file to be parsed

<?xml version="1.0"?>
<company>
    <employee id="1001">
        <firstname>yong</firstname>
        <lastname>mna</lastname>
        <nickname>mrreferenc</nickname>
        <salary>100000</salary>
    </employee>
    <employee id="2001">
        <firstname>dev</firstname>
        <lastname>journal</lastname>
        <nickname>general</nickname>
        <salary>200000</salary>
    </employee>
       <employee id="2002">
        <firstname>darth</firstname>
        <lastname>vader</lastname>
        <nickname>anakan</nickname>
        <salary>2000</salary>
    </employee>
<employee id="2003">
        <firstname>obi</firstname>
        <lastname>van kanobi</lastname>
        <nickname>ben kanobi</nickname>
        <salary>1500</salary>
    </employee>
<employee id="2009">
        <firstname>hello</firstname>
        <lastname>world</lastname>
        <nickname>wasteland</nickname>
        <salary>20</salary>
    </employee>
</company>

CODE:
   
__author__ = 'solomon'
from xml.dom import minidom

xmlfile= minidom.parse('/home/solomon/solo.xml')
employee = xmlfile.getElementsByTagName("employee")
for emp in employee:
    if(emp.hasAttribute('id')):
        print emp.getAttribute('id')
    firstname= emp.getElementsByTagName('firstname')[0]
    print "firtname" + firstname.childNodes[0].data
    lastname=emp.getElementsByTagName('lastname')[0]
    print 'lastname'+lastname.childNodes[0].data
    salry=emp.getElementsByTagName('salary')[0]
    print "salary"+salry.childNodes[0].data
 
 
OUTPUT:
 
/usr/bin/python2.7 /home/solomon/PycharmProjects/untitled/domparsing.py
1001
firtnameyong
lastnamemna
salary100000
2001
firtnamedev
lastnamejournal
salary200000
2002
firtnamedarth
lastnamevader
salary2000
2003
firtnameobi
lastnamevan kanobi
salary1500
2009
firtnamehello
lastnameworld
salary20

Process finished with exit code 0
 

No comments:

Post a Comment