work
Topic source简化下: class YHWeatherSaxHandler(object): def init(self): self.data = { 'forecast': [] }
def start_element(self, name, attrs):
if name == 'yweather:location':
self.data['city'] = attrs['city']
elif name == 'yweather:forecast':
self.data['forecast'].append({
'date': attrs['date'],
'high': attrs['high'],
'low' : attrs['low']
})
def parseXml(xml_str):
#print(xml_str)
handler = YHWeatherSaxHandler()
parser = ParserCreate()
parser.StartElementHandler = handler.start_element
parser.Parse(xml_str)
return handler.data
- 1
4Neutrino
from xml.parsers.expat import ParserCreate from urllib import request
class YHWeatherSaxHandler(object): def init(self, dict): self.data = dict
def parseXml(xml_str):