#!/usr/bin/python
from xml.sax import make_parser 
from xml.sax.handler import ContentHandler 

class BasketBallHandler(ContentHandler):
    def __init__ (self, searchTerm): 
          self.searchTerm = searchTerm; 
          self.isPointsElement, self.isReboundsElement = 0, 0;

    def startElement(self, name, attrs): 
       if name == 'player':      
         self.playerName = attrs.get('name',"") 
         self.playerAge = attrs.get('age',"") 
         self.playerHeight = attrs.get('height',"") 
       elif name == 'points': 
         self.isPointsElement= 1; 
         self.playerPoints = ""; 
       elif name == 'rebounds': 
         self.isReboundsElement = 1; 
         self.playerRebounds = ""; 
       return 

    def endElement(self, name):
       if name == 'points': 
         self.isPointsElement= 0 
       if name == 'rebounds': 
         self.inPlayersContent = 0 
       if name == 'player' and self.searchTerm == self.playerName : 
           print '<h2>Statistics for player:' , self.playerName,
           '</h2><br>(age:', self.playerAge , 'height' , self.playerHeight ,
           ")<br>" 
           print 'Match average:', self.playerPoints , 'points,' , self.playerRebounds, 'rebounds'

    def characters (self, ch): 
       if self.isPointsElement== 1: 
         self.playerPoints += ch 
       if self.isReboundsElement == 1: 
         self.playerRebounds += ch


searchTerm = 'Mick Fowler'
parser = make_parser()    
curHandler = BasketBallHandler(searchTerm) 
parser.setContentHandler(curHandler) 
parser.parse(open('playerStats.xml')) 
print "</body></html>"
