我只想使用Pylatex生成pdf文件。我查看基本示例并重新运行脚本,但它引发了错误:OSError:[Errno 2]没有这样的文件或目录。
这是我的剧本:
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()
错误:
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
有人能帮助我吗? :-D非常感谢。
答案 0 :(得分:2)
根据错误代码,你可能错过了一个乳胶编译器:
compilers = (
('latexmk', latexmk_args),
('pdflatex', [])
)
尝试这样做:
apt-get install latexmk
答案 1 :(得分:0)
运行python脚本时,PATH中的pdflatex命令是什么?并 确定你已经安装了texlive,如果它仍然无法正常工作,请尝试安装latexmk。
我遇到了同样的问题,只要设置你的PATH,考虑到你已经安装了texlive。
就我而言,他的问题是PATH。我使用Flask运行一个网站,使用uWsgi作为服务进行托管,并且PATH设置为我的virtualenv。
所以我修复了添加&#34;:/ usr / bin&#34;并且工作,见下文:
[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