谷歌协作平台笔记本PDF下载

44

Google Co-laboratory笔记本的“文件”菜单中没有像独立的Jupyter那样的“下载为”下拉菜单项。如何将笔记本下载为PDF?


3
在浏览器中使用ctrl+p,进入选项并点击“背景图形”。保存的pdf将具有更高的质量和更好的格式。 - darkexodus
1
请注意,在Firefox浏览器上,页面的某些部分会被裁剪(顶部和底部)。 - ctrl-alt-delor
14个回答

43

您也可以直接在 Colab 上运行 mayurmadnani 的解决方案。
因此,请在 Colab 中创建一个新的 Python 工作簿,并将其连接到运行时。
然后使用以下命令将必要的软件包安装到虚拟机中:

!apt-get install texlive texlive-xetex texlive-latex-extra pandoc
!pip install pypandoc
将您的Google驱动器挂载以访问您的ipynb文件
from google.colab import drive
drive.mount('/content/drive')

因为驱动器被挂载为只读,所以我必须将文件从驱动器复制到工作目录中。

!cp drive/My Drive/Colab Notebooks/Untitled.ipynb ./

然后您可以运行转换器。

!jupyter nbconvert --to PDF "Untitled.ipynb"

然后您可以在左侧面板中下载该文件。


4
好的,没问题。虽然这有点过度,但它提供了许多关于如何使用Colab和Drive的见解。谢谢。 - Pokemonrathon
在Google Colab上安装texlive-xetex时遇到了问题。出现错误-Err:1 http://security.ubuntu.com/ubuntu bionic-updates/main amd64 libgs9-common all 9.26~dfsg+0-0ubuntu0.18.04.10 404 Not Found [IP: 91.189.88.174 80]...等类似的行。但在我的本地机器上却可以无缝运行。 - Narayan Acharya
1
只需要做一个小修正。使用!cp "./drive/My Drive/Colab Notebooks/Untitled.ipynb" ./代替!cp drive/My Drive/Colab Notebooks/Untitled.ipynb ./,因为有空格。 - dvillaj
1
!cp /content/drive/My\ Drive/Colab\ Notebooks/yourfile.ipynb ./ - BrB
这种方法的问题在于它不会存储输出,只会存储代码单元。 - Sadaf Shafi

14

使用内置浏览器打印功能,然后将结果保存为pdf。


1
有趣的解决方案,但没有目录。 - Dee
它适用于大多数笔记本电脑,但对于那些带有嵌入式JavaScript内容的笔记本电脑效果不佳。 - Dylan

11

@user10914779的答案对我有用。但如果你想要更短且易读的代码,你可以看看这个Github仓库:colab-pdf

你可以将以下代码粘贴到Colab笔记本的最后一个单元格中并运行它。它会生成一个PDF文件并将其保存到您的云端硬盘。

!wget -nc https://raw.githubusercontent.com/brpy/colab-pdf/master/colab_pdf.py
from colab_pdf import colab_pdf
colab_pdf('name-of-the-notebook.ipynb')
您可以提供笔记本的名称给colab_pdf('name-of-the-notebook.ipynb')。如果您不感兴趣输出该代码块所产生的内容,那么您可以使用'%%capture'来隐藏它。
%%capture
!wget -nc https://raw.githubusercontent.com/brpy/colab-pdf/master/colab_pdf.py
from colab_pdf import colab_pdf

太棒了@Osmani。已点赞! - Deepak Tatyaji Ahire
@DeepakTatyajiAhire,谢谢!很高兴能帮助 :) - Osmani
你好,它具体保存在哪里? - undefined

8

请尝试以下任一方法:

  1. 您可以选择“文件”>“下载 .ipynb”选项。使用以下命令将ipynb转换为pdf或其他格式。

jupyter nbconvert --to FORMAT notebook.ipynb

详见使用指南:https://nbconvert.readthedocs.io/en/latest/usage.html

  1. 正如Bob所提到的,使用打印选项保存为pdf。但是,如果文本超出页面,则可能会丢失该文本。

只有在本地已经安装了Jupyter时,这才有意义。我在我的电脑上尝试过,但出现了“nbconvert.utils.pandoc.PandocMissing: Pandoc wasn't found.”的错误。我认为如果我只是在我的电脑上打开笔记本并使用“下载为”保存为PDF就可以了。谢谢。 - Pokemonrathon

4
  1. 下载 .ipynb 文件
  2. 另存为 HTML
  3. 从浏览器打印 PDF

4

点击这里查看视频:https://youtu.be/n2Cd9NCZtZk

  %cd go_to_your_path

#run these.

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

!jupyter nbconvert --to pdf fileName.ipynb

0

你可以使用以下代码下载相关的软件包:

!sudo apt-get install texlive-xetex texlive-fonts-recommended texlive-plain-generic

然后运行下面的代码将相应命名的IPYNB文件转换为同名的PDF文件。
!jupyter nbconvert --to pdf /content/Text_Summarization.ipynb

一个提示: 如果文件名中有空格,你应该在代码中添加反斜杠,就像下面这样:
!jupyter nbconvert --to pdf /content/Text\ Preprocessing\ and\ BoW.ipynb

0

如果您正在使用Jupyter,我发现更简单的方法是:

  • 下载LaTeX文件。
  • 上传到Overleaf。
  • 然后将其下载为PDF文件。

否则,如果您正在使用Google Collab:

  • 下载为ipynb文件。
  • 上传到Jupyter并重复上述步骤。

0
  1. 从Colab下载.ipynb文件,从文件->下载.ipynb
  2. 然后将其上传到您的jupyter笔记本中,并像在独立的jupyter中一样以pdf格式下载。

由于.ipynb文件最多只需要几MB的数据。


0

所以,在浏览器的打印选项中选择取消选项,然后你就可以得到“另存为PDF”的选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接