Example #1
0
    def __check_eclass(self):
        link = self._get_document_field(self.document, 'announcements.link_eclass')
        if not link:
            self.logger.debug('"link_eclass" not found in document!')
            return None

        html = self.fetch(link)
        if not html:
            self.logger.warning('Fetch "%s" returned nothing' % link)
            return None

        self.logger.debug('Parsing eclass ...')
        try:
            entries = parse_rss(html)
        except Exception as e:
            self.logger.error('parse_rss: %s' % unicode(e))
            return None

        try:
            entries = self.fix_eclass_entries(entries)
        except Exception as e:
            self.logger.error('fix_eclass_entries: %s', unicode(e))
            return None

        return entries
 def parse(self, bsoup):
     return parse_rss(unicode(bsoup))