from enum import Enum
class WeatherSaxHandle(object):
weather = {'city':'','forecast':[]}
def start_element(self,name,attrs):
if name == 'yweather:location':
self.weather['city'] = attrs['city']
elif name == 'yweather:forecast':
self.weather['forecast'].append({'date':dateFormat(attrs['date']),'high':attrs['high'],'low':attrs['low']})
艾文SEO
from enum import Enum class WeatherSaxHandle(object): weather = {'city':'','forecast':[]} def start_element(self,name,attrs): if name == 'yweather:location': self.weather['city'] = attrs['city'] elif name == 'yweather:forecast': self.weather['forecast'].append({'date':dateFormat(attrs['date']),'high':attrs['high'],'low':attrs['low']})
def parseXml(xml_str): gather=WeatherSaxHandle() parse=ParserCreate() parse.StartElementHandler=gather.start_element parse.Parse(xml_str) print(gather.weather) return gather.weather
#日期格式化
def dateFormat(str): listInfo = str.split()