XSLT转换报错lxml.etree.XSLTApplyError: Unregistered function求助
lxml XSLT转换报错的版本排查与降级方案
一、查看相关库版本
1. 在Python终端查看lxml及依赖库版本
执行以下代码:
import lxml import lxml.etree as ET # 查看lxml版本 print(lxml.__version__) # 查看底层依赖的libxml2、libxslt版本 print(ET.LIBXML_VERSION) print(ET.LIBXSLT_VERSION)
2. 通过pip命令查看已安装的lxml信息
在系统终端执行:
pip show lxml
输出内容里的Version字段就是当前lxml版本,还能看到安装路径等关联信息。
二、降级lxml到稳定版本
1. 先卸载当前版本
pip uninstall -y lxml
2. 安装指定旧版本
替换下面的4.9.3为你之前能正常运行代码的版本号:
pip install lxml==4.9.3
额外提示
- 如果你记不清之前的版本,可尝试查看pip的安装历史(需确保pip版本较新):
pip list --format=freeze --history - 本次报错
Unregistered function大概率是新版本lxml依赖的libxml2/libxslt对EXSLT扩展函数的支持逻辑变更导致,降级到验证过的旧版本通常能直接解决问题。
内容的提问来源于stack exchange,提问作者c0rv
相关产品推荐
相关产品推荐

