Source code for openpyxl.xml

# Copyright (c) 2010-2024 openpyxl

"""Collection of XML resources compatible across different Python versions"""
import os

[docs] def lxml_available(): try: from lxml.etree import LXML_VERSION LXML = LXML_VERSION >= (3, 3, 1, 0) if not LXML: import warnings warnings.warn("The installed version of lxml is too old to be used with openpyxl") return False # we have it, but too old else: return True # we have it, and recent enough except ImportError: return False # we don't even have it
[docs] def lxml_env_set(): return os.environ.get("OPENPYXL_LXML", "True") == "True"
LXML = lxml_available() and lxml_env_set()
[docs] def defusedxml_available(): try: import defusedxml # noqa except ImportError: return False else: return True
[docs] def defusedxml_env_set(): return os.environ.get("OPENPYXL_DEFUSEDXML", "True") == "True"
DEFUSEDXML = defusedxml_available() and defusedxml_env_set()