JupyterノートブックをPDFとしてエクスポートしようとするたびに、別のウィンドウで次のエラーが表示されます。
500 : Internal Server Error
The error was:
nbconvert failed: xelatex not found on PATH, if you have not installed xelatex you may need to do so. Find further instructions at https://nbconvert.readthedocs.io/en/latest/install.html#installing-tex.
MacOS Sierra 10.12.6を実行しています。
私が試したこと:
ランニング
!echo $PATH
利回り:
/Users/ed/anaconda/bin:/Users/ed/anaconda/bin:/usr/bin:/bin:/usr/sbin:/sbin
@einswenigerの提案に従ってxelatexを含むディレクトリを見つけました:/ usr/local/texlive/bin/x86_64-darwin。 XeLatexを上記のbinディレクトリにコピーして貼り付けると、新しいエラーが発生します。
```nbconvert failed: PDF creating failed, captured latex output:
warning: kpathsea: configuration file texmf.cnf not found in these directories: /Users/e/anaconda/bin:/Users/ed/anaconda/bin/share/texmf-local/web2c:/Users/ed/anaconda/bin/share/texmf-dist/web2c:/Users/ed/anaconda/bin/share/texmf/web2c:/Users/ed/anaconda/bin/texmf-local/web2c:/Users/ed/anaconda/bin/texmf-dist/web2c:/Users/ed/anaconda/bin/texmf/web2c:/Users/ed/anaconda:/Users/edefilippis/anaconda/share/texmf-local/web2c:/Users/e/anaconda/share/texmf-dist/web2c:/Users/ed/anaconda/share/texmf/web2c:/Users/ed/anaconda/texmf-
This is XeTeX, Version 3.14159265-2.6-0.99999 (TeX Live 2018) (preloaded format=xelatex)
kpathsea: Running mktexfmt xelatex.fmt
I can't find the format file `xelatex.fmt'!
```
また、ディレクトリにxelatex.fmtを配置しましたが、まだエラーが発生しています。
同じ問題が発生しました。以前に述べたように、問題はxlatexがPATH環境変数に見つからないことにあります。
私のために働いた解決策は、ノートブックから次を実行することでした:
!export PATH=/Library/TeX/texbin:$PATH
または、単にコマンドラインで:
export PATH=/Library/TeX/texbin:$PATH
そして、次のようにコマンドラインからPDFへのエクスポートを実行します(適切な環境がある場合は仮想環境内で)。
jupyter nbconvert your_notebook.ipynb --to pdf
これにより、実行中の同じディレクトリにノートブックのPDFが作成されます。
過去にWindowsとLinuxでtensorflowを使用するときにpythonのパスで同様の問題に遭遇しました。他の人によって指摘されているように、PATHを使用する方法です。 bashrc(Linuxの場合)ですが、スクリプトごとにパスの問題を解決するために以下のコードを見つけました。
import sys
if "\your\path\to\xelatex" not in sys.path:
print('adding path') # I just add this to know if the path was present or not.
sys.path.append("\your\path\to\xelatex")
基本的に、探しているものをPATHで確認し、欠落している場合は追加します。 「if」ステートメントさえ必要ないでしょう。
おそらく最も実用的な方法は、問題のパスが「まれに使用される」または「一度だけ使用する」PATH add ...
したがって、上記のコメントで指摘されたように(そして、既に持っていると思いますが)、ファイルの場所を見つけ、上記のコードを使用してその場所を追加します。
それについてのさらなる読書: https://docs.python.org/3/tutorial/modules.html 6.2標準モジュール
利用可能な更新がある場合は、Jupyterを更新してみてください。