#!/usr/bin/python import sys import urllib from string import maketrans #from xml.sax import make_parser, handler from xml.sax import handler, parseString class ElementProcesser(handler.ContentHandler): def startElement(self, name, attrs): if name == "city": print "" elif name == "current_conditions": print "" elif name == "condition": print "" elif name == "humidity": print "" elif name == "wind_condition": print "" elif name == "day_of_week": print "" #Celsius #elif name == "temp_c": #print "" #elif name == "low": #print "" #elif name == "high": #print "" #Fahrenheit elif name == "temp_f": print "" elif name == "low": print "" elif name == "high": print "" def endElement(self, name): if name == "current_conditions": print "" def startDocument(self): print '' def endDocument(self): print '' def getDayOfWeek(self,day): #English if day == "Mon": return "Monday" elif day == "Tue": return "Tuesday" elif day == "Wed": return "Wednesday" elif day == "Thu": return "Thursday" elif day == "Sat": return "Saturday" elif day == "Sun": return "Sunday" else: return day # You should use your local version of google to have the messages in your language and metric system f = urllib.urlopen("http://www.google.com/ig/api?weather=24279") xml = f.read() f.close() #Avoid problems with non english characters trans=maketrans("\xe1\xe9\xed\xf3\xfa","aeiou") xml = xml.translate(trans) #parser.parse("http://www.google.es/ig/api?weather="+sys.argv[1]) parseString(xml,ElementProcesser())