def endElement(self, name): #print "</%s>" % name SAXTracker.endElement(self, name) if self._elemstack: parent = self._elemstack[-1] else: parent = None if name == "title": self._obj.set_title(self._contents) elif name == "link": self._obj.set_link(self._contents) elif name == "description": self._obj.set_description(self._contents) elif name == "guid": self._obj.set_guid(self._contents) elif name == "atom:summary": if not self._obj.get_description(): self._obj.set_description(self._contents) elif name == "author": self._obj.set_author(self._contents) elif name == "dc:creator": if isinstance(self._obj, Item) and (not self._obj.get_author()): self._obj.set_author(self._contents) elif name == "dc:date": if not self._obj.get_pubdate(): self._obj.set_pubdate(self._contents) elif name == "url" and parent == "image": self._site.image.url = self._contents elif name == "name" and parent == "textinput": self._site.input.name = self._contents elif name == "language": self._site.lang = self._contents elif name == "rating": self._site.rating = self._contents elif name == "copyright": self._site.copyright = self._contents elif name == "pubDate": self._obj.set_pubdate(self._contents) elif name == "lastBuildDate": self._site.lastbuild = self._contents elif name == "docs": self._site.docs = self._contents elif name == "managingEditor": self._site.editor = self._contents elif name == "webMaster": self._site.webmaster = self._contents elif name == "image": self._obj = self._site # restore previous object
def endElement(self, name): if self._elemstack and \ ((self._elemstack[-1] == "content" and name != "content") or (self._elemstack[-1] == "summary" and name != "summary")): return # ignore the embedded markup #print "</%s>" % name SAXTracker.endElement(self, name) if self._elemstack: parent = self._elemstack[-1] else: parent = None if name == "feed": self._pop_base() elif name == "entry": self._pop_base() if self._obj.get_author() == None: self._obj.set_author(self._site.get_editor()) # inherit if self._obj.get_description() == None and self._summary != None: self._obj.set_description(self._summary) # fallback elif name == "title": self._obj.set_title(self._contents) elif name == "subtitle" and parent == "feed": self._site.set_description(self._contents) elif name == "id": if parent == "feed" and self._obj.get_link() == None: self._obj.set_link(self._contents) elif parent == "entry": self._obj.set_guid(self._contents) elif name == "published": self._obj.set_pubdate(self._contents) elif name == "updated" and parent == "entry": if not self._obj.get_pubdate(): self._obj.set_pubdate(self._contents) elif name == "content": self._obj.set_description(self._contents) elif name == "summary": self._summary = self._contents # use if no <content> element elif name == "name" and parent == "author": if self._elemstack[-2] == "feed": self._obj.set_editor(self._contents) elif self._elemstack[-2] == "entry": self._obj.set_author(self._contents)
def endElement(self, name): SAXTracker.endElement(self, name) if name == "param": set_param(self._obj, self._attrs["name"], self._contents)
def endElement(self, name): SAXTracker.endElement(self, name) if name == "title": self._registry.set_title(self._contents)