pulldom.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. # defusedxml
  2. #
  3. # Copyright (c) 2013 by Christian Heimes <christian@python.org>
  4. # Licensed to PSF under a Contributor Agreement.
  5. # See https://www.python.org/psf/license for licensing details.
  6. """Defused xml.dom.pulldom
  7. """
  8. from __future__ import print_function, absolute_import
  9. from xml.dom.pulldom import parse as _parse
  10. from xml.dom.pulldom import parseString as _parseString
  11. from .sax import make_parser
  12. __origin__ = "xml.dom.pulldom"
  13. def parse(
  14. stream_or_string,
  15. parser=None,
  16. bufsize=None,
  17. forbid_dtd=False,
  18. forbid_entities=True,
  19. forbid_external=True,
  20. ):
  21. if parser is None:
  22. parser = make_parser()
  23. parser.forbid_dtd = forbid_dtd
  24. parser.forbid_entities = forbid_entities
  25. parser.forbid_external = forbid_external
  26. return _parse(stream_or_string, parser, bufsize)
  27. def parseString(
  28. string, parser=None, forbid_dtd=False, forbid_entities=True, forbid_external=True
  29. ):
  30. if parser is None:
  31. parser = make_parser()
  32. parser.forbid_dtd = forbid_dtd
  33. parser.forbid_entities = forbid_entities
  34. parser.forbid_external = forbid_external
  35. return _parseString(string, parser)