从 Jupyter Notebook 保存为 PDF 时出错

从 Jupyter Notebook 保存为 PDF 时出错

当我尝试将 Jupyter Notebook 保存为 PDF 时,出现“500:内部服务器错误”。有什么方法可以解决这个问题吗?

答案1

正确设置 nbconvert 将 ipython 笔记本转换为 pdf/latex 的基本步骤是

  1. 安装 nbconvert
  2. 安装 pandoc
  3. 安装 Texlive

安装 nbconvert

pip install nbconvert

或者conda install nbconvert

安装 pandoc

sudo apt-get install pandoc对于 Ubuntu

安装 texlive

您可以安装推荐的软件包或完整安装。

sudo apt-get install texlive texlive-xetex texlive-fonts-recommended texlive-generic-extra texlive-generic-recommended

`

要完整安装 texlive,请按照以下说明进行操作 拖船我从 tug-texlive-下载并遵循了给出的说明 TeX Live - 快速安装. 安装说明概要:

  1. 清理

    rm -rf /usr/local/texlive/2019

    rm -rf ~/.texlive2019

  2. 运行安装程序

    解压 zip 文件

    cd /your/unpacked/directory

    perl install-tl

    输入命令:i

  3. 设置路径

    sudo vi /etc/bash.bashrc并插入

    PATH=/usr/local/texlive/2019/bin/x86_64-linux:$PATH; export PATH

    MANPATH=/usr/local/texlive/2019/texmf-dist/doc/man:$MANPATH; export MANPATH

    INFOPATH=/usr/local/texlive/2019/texmf-dist/doc/info:$INFOPATH; export INFOPATH

  4. 设置默认纸张尺寸

    tlmgr paper letter

答案2

如果你安装了 LaTeX,你可以直接从 Jupyter 笔记本下载 PDF文件->下载为->通过 LaTeX 生成 PDF(.pdf)否则请按照以下两个步骤操作。

  1. 将 Jupyter 笔记本文件转换为 html。选择文件->下载为->HTML(.html)或者运行以下命令:

    jupyter nbconvert --to html notebook.ipynb  
    

    这会将 Jupyter 文档文件 notebook.ipynb 转换为 html 输出格式。

    Google Colaboratory 是 Google 的免费 Jupyter 笔记本环境,无需设置,完全在云端运行。如果您使用 Google Colab,命令是相同的,但 Google Colab 只允许您下载 .ipynb 或 .py 格式。

  2. 安装 wkhtmltopdf 命令行实用程序,将 html 转换为 pdf sudo apt install wkhtmltopdf,并将 html 文件 notebook.html 转换为名为 notebook.pdf 的 pdf 文件。

    wkhtmltopdf notebook.html notebook.pdf   
    

答案3

最可能的原因是,您没有安装适当的依赖项。您的 Ubuntu 系统必须安装一些有关 LaTeX 和 XeTeX 文件转换的软件包,以便将您的笔记本保存为 PDF。您可以通过以下方式安装它们:

sudo apt-get install texlive texlive-xetex texlive-generic-extra texlive-generic-recommended pandoc

此外,nbconvert还有另一个依赖项通常会随 jupyter 自动安装。但您可以在激活虚拟环境时安装它以确保万无一失:

pip install -U nbconvert

答案4

我可以通过消除 LaTeX 代码和 $ 之间的空格来解决这个问题。例如$\frac$ \frac

相关内容