在Jupyter中导出时,如何在markdown单元格中转换<img>标签?

Fra*_*anc 5 html markdown image jupyter nbconvert

我有一个大型的报告笔记本,有很多图像.![title](link)我不得不使用语法,而是使用它<img src="link" align="right" width=100>,所以我可以更好地控制它们.

虽然这适用于Jupyter Server中的笔记本内部,但内联<img>标签会逐字呈现,而不是显示为图像.

我认为问题在于nbconvert处理转换的模块,但似乎已经解决类似的问题.

我的链接最初直接http://链接到链接,但我已经将它们全部拉到本地,并且仍然获得逐字HTML代码而不是图像.


在Jupyter vs渲染的HTML中


  • Jupyter版本: 4.2.1
  • nbconvert版本: 5.2.1
  • 蟒蛇: 3.6.1
  • 分布:蟒蛇
  • 平台:Windows

mpa*_*cer 5

正如本期所讨论的,这可能与mistune(nbconvert使用的)如何解析html属性有关.你有什么版本的迷雾?

如果您有mistune0.7.3,您将遇到以下情况:

In [1]: import mistune

In [2]: mistune.markdown('\n <img src="link" align="right" widt
   ...: h=100>  \n', escape=False)
Out[2]: '<p>&lt;img src="link" align="right" width=100&gt;</p>\n'

In [3]: mistune.markdown('\n <img src="link" align="right" widt
   ...: h="100">  \n', escape=False)
Out[3]: '<p><img src="link" align="right" width="100"></p>\n'

In [4]: mistune.__version__
Out[4]: '0.7.3'
Run Code Online (Sandbox Code Playgroud)

而0.7.4提供:

In [1]: import mistune

In [2]: mistune.markdown('\n <img src="link" align="right" widt
   ...: h=100>  \n', escape=False)
Out[2]: '<p><img src="link" align="right" width=100></p>\n'

In [3]: mistune.markdown('\n <img src="link" align="right" widt
   ...: h="100">  \n', escape=False)
Out[3]: '<p><img src="link" align="right" width="100"></p>\n'

In [4]: mistune.__version__
Out[4]: '0.7.4'
Run Code Online (Sandbox Code Playgroud)

如果你为你的html属性添加引号 - 例如,<img src="link" align="right" width="100">- 可以解决问题.