Esempio n. 1
0
 def startElement(self, name, attrs):
     if self._elemstack and self._elemstack[-1] in ("content", "summary"):
         return # ignore the embedded markup
     
     #print "<%s>" % name, attrs
     if self._elemstack:
         parent = self._elemstack[-1]
     else:
         parent = None                
     SAXTracker.startElement(self, name, attrs)
     
     if name == "feed":
         self._push_base(attrs.get("xml:base", ""))
         self._obj = self._site
     elif name == "entry":
         self._obj = self._factory.make_item(self._site)
         self._site.add_item(self._obj)
         self._push_base(attrs.get("xml:base", ""))
         self._summary = None
     elif name == "link" and parent == "entry" and \
          attrs.get("rel", "alternate") == "alternate":
         url = self._get_full_url(attrs["href"])
         self._obj.set_link(url)
     elif name == "link" and parent == "feed" and \
          attrs.get("rel", "alternate") == "alternate":
         url = self._get_full_url(attrs["href"])
         self._site.set_link(url)
Esempio n. 2
0
    def startElement(self, name, attrs):                
        SAXTracker.startElement(self, name, attrs)

        if name == "outline":
            url = attrs.get("xmlUrl", attrs.get("htmlUrl"))
            feed = self._factory.make_site(url)
            feed.set_title(attrs.get("title"))
            feed.set_format(attrs.get("type"))
            if attrs.has_key("htmlUrl"):
                feed.set_link(attrs.get("htmlUrl"))
            self._registry.add_feed(feed)
    def startElement(self, name, attrs):
        SAXTracker.startElement(self, name, attrs)

        if name == "param":
            self._attrs = attrs

        elif name == "collection":
            self._coll = Collection(attrs["title"], attrs["id"], None,
                                    self._server)
            self._server.add_collection(self._coll)

        elif name == "relation":
            self._feed = CSVFragmentFeed(attrs["source"], attrs["type"],
                                         attrs["pattern"], attrs["timestamp"])
            self._coll.add_feed(self._feed)

        elif name == "property":
            self._feed.add_column(Column(attrs["column"], attrs["uri"], True))
Esempio n. 4
0
 def startElement(self, name, attrs):
     if self._elemstack:
         parent = self._elemstack[-1]
     else:
         parent = None
         
     #print "<%s>" % name
     if name == "rss" and attrs.has_key("version"):
         if attrs["version"] != "0.91":
             self._site.errors.append("Unknown RSS version %s" %
                                      (attrs["version"]))
     elif name == "rss" or name == "channel":
         self._obj = self._site
     elif name == "item" and parent != "keywords":
         self._obj = self._factory.make_item(self._site)
         self._site.add_item(self._obj)
     elif name == "image":
         self._site.image = self._factory.make_image()
         self._obj = self._site.image
     elif name == "textinput":
         self._site.input = self._factory.make_text_input()
         self._obj = self._site.input
             
     SAXTracker.startElement(self, name, attrs)