2016-10-14 2 views
2

Ich möchte nur Platex verwenden, um die PDF-Datei zu generieren. Ich schaue auf das grundlegende Beispiel und führe das Skript erneut aus, aber es hat den Fehler ausgelöst: OSError: [Errno 2] Keine solche Datei oder Verzeichnis.Pylatex-Fehler beim Generieren der PDF-Datei - Keine solche Datei oder Verzeichnis

Hier ist mein Skript:

import sys 
from pylatex import Document, Section, Subsection, Command 
from pylatex.utils import italic, NoEscape 


def fill_document(doc): 
    """Add a section, a subsection and some text to the document. 
    :param doc: the document 
    :type doc: :class:`pylatex.document.Document` instance 
    """ 
    with doc.create(Section('A section')): 
     doc.append('Some regular text and some ') 
     doc.append(italic('italic text. ')) 

     with doc.create(Subsection('A subsection')): 
      doc.append('Also some crazy characters: $&#{}') 


if __name__ == '__main__': 
    reload(sys) 
    sys.setdefaultencoding('utf8') 
    # Basic document 
    doc = Document() 
    fill_document(doc) 

    doc.generate_pdf("full") 
    doc.generate_tex() 

Und der Fehler:

Traceback (most recent call last): 
    File "/Users/code/Test Generator/Generate.py", line 34, in <module> 
    doc.generate_pdf("full") 
    File "/Library/Python/2.7/site-packages/pylatex/document.py", line 227, in generate_pdf 
    raise(os_error) 
OSError: [Errno 2] No such file or directory 

Kann mir jemand helfen? :-D vielen Dank.

+0

ich hatte das gleiche Problem. Finden Sie eine Lösung? –

Antwort

2

um den Fehler auf dem Code basiert, sind Sie wahrscheinlich ein Latex Compiler fehlt:

compilers = (
    ('latexmk', latexmk_args), 
    ('pdflatex', []) 
) 

Versuchen Sie dies zu tun:

in Ihrer PATH
apt-get install latexmk 
0

Ist der pdflatex Befehl, wenn die Python-Lauf Skript? Und be wirklich sicher, dass Sie Texlive installiert haben und wenn es dann immer noch nicht funktioniert, versuchen Sie auch, Latexmk zu installieren.

Ich hatte das gleiche Problem, stellen Sie einfach Ihren Pfad, in Anbetracht der Tatsache, dass Sie Texlive installiert haben.

In meinem Fall war das Problem der PATH. Ich habe eine Website mit Flask betrieben, Hosting mit uWsgi als Dienst, und PATH wurde nur mit meinem virtualenv eingestellt.

So fixiert ich den Zusatz ":/usr/bin" und arbeitete, siehe unten:

[Unit] 
Description=uWSGI instance to serve myproject 
After=network.target 

[Service] 
User=www-data 
Group=www-data 
WorkingDirectory=/sites/simapp 
Environment="PATH=/env/flask3/bin:/usr/bin" 
ExecStart=/env/flask3/bin/uwsgi --ini /sites/simapp/simapp.ini 

[Install] 
WantedBy=multi-user.target 
Verwandte Themen