def parseFile(self, file): """Parse a file and populate the channel.""" dh = RSSParser(self) p = make_parser() p.setContentHandler(dh) p.setFeature(sax.handler.feature_namespaces, 1) p.parseFile(file) return dh
def run(self): self.parser = sax2exts.make_parser(self.parserlist) try: self.parser.setFeature(handler.feature_namespaces, 0) except SAXException: self.has_namespaces = 0 try: self.parser.setFeature(handler.feature_validation, 1) except SAXException: self.has_validation = 0 self.parser.setContentHandler(self) self.parser.parse(self.suitedef)
def run(self): self.parser = sax2exts.make_parser(self.parserlist) try: self.parser.setFeature(handler.feature_namespaces, 0) except SAXException: self.has_namespaces = 0 try: self.parser.setFeature(handler.feature_validation, 1) except SAXException: self.has_validation = 0 if self.validate == 'yes': print >>sys.stderr, "Parser is non-validating!!!" sys.exit(1) self.parser.setContentHandler(self) self.parser.parse(self.suitedef)
def parse(self, url, timeout=30): """ Fetch a channel representation from a URL and populate the channel. """ dh = RSSParser(self) p = make_parser() p.setContentHandler(dh) p.setFeature(sax.handler.feature_namespaces, 1) signal.signal(signal.SIGALRM, self._timeout) signal.alarm(timeout) try: p.parse(str(url)) # URIs are ascii finally: signal.alarm(0) return dh
def doParse(self, file, **kw): validate = kw.get('validate', 0) logger = TestLogger() parser = sax2exts.make_parser(self.parserlist) if self.has_namespaces: # all testing w/o namespaces at the moment parser.setFeature(handler.feature_namespaces, 0) if self.has_validation: parser.setFeature(handler.feature_validation, validate) parser.setContentHandler(logger) parser.setErrorHandler(logger) parser.setEntityResolver(logger) parser.setDTDHandler(logger) try: parser.parse(file) except TestResult, result: return result
def test(xmlfile): parser = sax2exts.make_parser([ 'pirxx', 'xml.sax.drivers2.drv_xmlproc', 'xml.sax.drivers2.drv_pyexpat', ]) print >> sys.stderr, "*** Using", parser try: parser.setFeature(handler.feature_namespaces, 1) except (SAXNotRecognizedException, SAXNotSupportedException): pass try: parser.setFeature(handler.feature_validation, 0) except (SAXNotRecognizedException, SAXNotSupportedException): pass saxhandler = EchoGenerator() parser.setContentHandler(saxhandler) parser.setProperty(handler.property_lexical_handler, saxhandler) parser.parse(xmlfile)