关于jinja2高版本api变化导致notebook导出html失败的问题

最新jinja2版本已经到了3.1.2,但是nbconvert引用的应该是老版本,具体代码报错如下

python 复制代码
Type "help", "copyright", "credits" or "license" for more information.
>>> import nbconvert
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\gw00305123\Anaconda3\lib\site-packages\nbconvert\__init__.py", line 4, in <module>
    from .exporters import *
  File "C:\Users\gw00305123\Anaconda3\lib\site-packages\nbconvert\exporters\__init__.py", line 3, in <module>
    from .html import HTMLExporter
  File "C:\Users\gw00305123\Anaconda3\lib\site-packages\nbconvert\exporters\html.py", line 14, in <module>
    from jinja2 import contextfilter
ImportError: cannot import name 'contextfilter' from 'jinja2' (C:\Users\gw00305123\Anaconda3\lib\site-packages\jinja2\__init__.py)

nubconvert会从jinja2导入一个叫contextfilter的东西,但是新版本已经没有了,这会导致我导出一个notebook到html时报错,具体报错信息如下

python 复制代码
10:58:59.463 [error] Export failed [Error: 未安装 Jupyter 松影
	at f_.getExportInterpreter (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:319696)
	at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
	at async v_.executeCommand (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:320876)
	at async E_.export (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:325143)
	at async M_.exportToFormat (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:330191)
	at async M_.performNbConvertExport (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:329960)
	at async M_.performExport (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:329635)
	at async M_.exportImpl (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:329263)
	at async M_.export (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:329019)
	at async $C.export (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1100000000-win32-x64\out\extension.node.js:24:470042)
	at async d.h (~\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\api\node\extensionHostProcess.js:141:140086)]

从报错信息中并不能看出什么问题,但是从报错信息的上一行,有个导入nbconvert的语句,于是推测跟nbconvert有关,于是有了开头的测试语句,发现是jinja2的版本问题,于是降了一个版本,装了3.0.3,解决!!!!

相关推荐
wyiyiyi2 小时前
【Web后端】Django、flask及其场景——以构建系统原型为例
前端·数据库·后端·python·django·flask
mit6.8242 小时前
[1Prompt1Story] 滑动窗口机制 | 图像生成管线 | VAE变分自编码器 | UNet去噪神经网络
人工智能·python
没有bug.的程序员3 小时前
JVM 总览与运行原理:深入Java虚拟机的核心引擎
java·jvm·python·虚拟机
甄超锋3 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
AntBlack4 小时前
不当韭菜V1.1 :增强能力 ,辅助构建自己的交易规则
后端·python·pyqt
杜子不疼.6 小时前
《Python学习之字典(一):基础操作与核心用法》
开发语言·python·学习
myzzb7 小时前
基于uiautomation的自动化流程RPA开源开发演示
运维·python·学习·算法·自动化·rpa
TLuoQiu7 小时前
小电视视频内容获取GUI工具
爬虫·python
我叫黑大帅7 小时前
【CustomTkinter】 python可以写前端?😆
后端·python
胡耀超7 小时前
DataOceanAI Dolphin(ffmpeg音频转化教程) 多语言(中国方言)语音识别系统部署与应用指南
python·深度学习·ffmpeg·音视频·语音识别·多模态·asr