site de Fabien Torre, université de Lille


Source de svg-v1.py

1: #!/usr/bin/python 2: 3: from xml.dom.minidom import parse 4: import sys 5: 6: xmlfilename = sys.argv[1] 7: dom = parse(xmlfilename) 8: 9: 10: print "-- le nom de l'auteur --" 11: 12: creators = dom.getElementsByTagName("dc:creator") 13: creator = creators[0] 14: 15: print creator.nodeName,'=',creator.nodeValue 16: 17: filscreator = creator.childNodes 18: i = 0 19: while filscreator[i].nodeType != 1: 20: i=i+1 21: # boucle WHILE car le premier fils n'est pas toujours celui que l'on croit 22: 23: agent = filscreator[i] 24: 25: print agent.nodeName,'=',agent.nodeValue 26: 27: filsagent = agent.childNodes 28: title = filsagent[1] 29: 30: print title.nodeName,'=',title.nodeValue 31: 32: nomcreateur = title.childNodes[0].nodeValue 33: 34: print "L'auteur est",nomcreateur,"!" 35: 36: 37: 38: print "-- le titre du dessin --" 39: 40: titles = dom.getElementsByTagName("dc:title") 41: 42: print titles[0].childNodes[0].nodeValue 43: 44: # (on suppose qu'il s'agit du premier dc.title du document...) 45: 46: 47: 48: print "-- les mots clefs --" 49: 50: bag = dom.getElementsByTagName("rdf:Bag")[0] 51: 52: bagfils = bag.childNodes 53: 54: for f in bagfils: 55: if f.nodeName=='rdf:li': 56: if f.childNodes.length>0: 57: # car les feuilles textes vides ne sont pas dans le DOM ! 58: print f.childNodes[0].nodeValue 59: 60: 61: 62: print "-- les rectangles --" 63: 64: rectangles = dom.getElementsByTagName("rect") 65: 66: print "il y en a",rectangles.length,':' 67: 68: for r in rectangles: 69: attrs = r.attributes 70: height = attrs['height'].nodeValue 71: width = attrs['width'].nodeValue 72: print ' . ',height,' x ',width 73: 74:
Fabien Torre Valid HTML5! Valid CSS!
site de Fabien Torre, université de Lille