示例#1
0
 def __init__(self,
              html=0,
              target=None,
              encoding=None,
              forbid_dtd=False,
              forbid_entities=True,
              forbid_external=True):
     if PY26 or PY31:
         _XMLParser.__init__(self, html, target)
     else:
         # Python 2.x old style class
         _XMLParser.__init__(self, html, target, encoding)
     self.forbid_dtd = forbid_dtd
     self.forbid_entities = forbid_entities
     self.forbid_external = forbid_external
     if PY3 and not PY31:
         parser = self.parser
     else:
         parser = self._parser
     if self.forbid_dtd:
         parser.StartDoctypeDeclHandler = self.defused_start_doctype_decl
     if self.forbid_entities:
         parser.EntityDeclHandler = self.defused_entity_decl
         parser.UnparsedEntityDeclHandler = self.defused_unparsed_entity_decl
     if self.forbid_external:
         parser.ExternalEntityRefHandler = self.defused_external_entity_ref_handler
 def __init__(self, html=0, target=None, encoding=None,
              forbid_dtd=False, forbid_entities=True,
              forbid_external=True):
     # Python 2.x old style class
     _XMLParser.__init__(self, html, target, encoding)
     self.forbid_dtd = forbid_dtd
     self.forbid_entities = forbid_entities
     self.forbid_external = forbid_external
     parser = self._parser
     if self.forbid_dtd:
         parser.StartDoctypeDeclHandler = self.defused_start_doctype_decl
     if self.forbid_entities:
         parser.EntityDeclHandler = self.defused_entity_decl
         parser.UnparsedEntityDeclHandler = self.defused_unparsed_entity_decl
     if self.forbid_external:
         parser.ExternalEntityRefHandler = self.defused_external_entity_ref_handler
示例#3
0
    def __init__(
        self,
        html=_sentinel,
        target=None,
        encoding=None,
        forbid_dtd=False,
        forbid_entities=True,
        forbid_external=True,
    ):
        # Python 2.x old style class
        _XMLParser.__init__(self, target=target, encoding=encoding)
        if html is not _sentinel:
            # the 'html' argument has been deprecated and ignored in all
            # supported versions of Python. Python 3.8 finally removed it.
            if html:
                raise TypeError("'html=True' is no longer supported.")
            else:
                warnings.warn(
                    "'html' keyword argument is no longer supported. Pass "
                    "in arguments as keyword arguments.",
                    category=DeprecationWarning,
                )

        self.forbid_dtd = forbid_dtd
        self.forbid_entities = forbid_entities
        self.forbid_external = forbid_external
        if PY3:
            parser = self.parser
        else:
            parser = self._parser
        if self.forbid_dtd:
            parser.StartDoctypeDeclHandler = self.defused_start_doctype_decl
        if self.forbid_entities:
            parser.EntityDeclHandler = self.defused_entity_decl
            parser.UnparsedEntityDeclHandler = (
                self.defused_unparsed_entity_decl)
        if self.forbid_external:
            parser.ExternalEntityRefHandler = (
                self.defused_external_entity_ref_handler)
示例#4
0
 def __init__(self, html=0, target=None):
     XMLParser.__init__(self, html, target)
     self._parser.CommentHandler = self.handle_comment
示例#5
0
 def __init__(self, html=0, target=None):
     XMLParser.__init__(self, html, target)
     self._parser.CommentHandler = self.handle_comment