Я пытаюсь запустить pdflatex для файла .tex из Python 2.4.4. подпроцесс (на маке):
import subprocess
subprocess.Popen(["pdflatex", "fullpathtotexfile"], shell=True)
, который фактически ничего не делает. Тем не менее, я могу без проблем запустить «pdflatex fullpathtotexfile» в терминале, создав PDF-файл. Чего мне не хватает?
[EDIT]
Как предложено в одном из ответов, я попытался:
return_value = subprocess.call(['pdflatex', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)
, что не с:
Traceback (most recent call last):
File "/Users/Benjamin/Desktop/directory/generate_tex_files_v3.py", line 285, in -toplevel-
return_value = subprocess.call(['pdflatex', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 413, in call
return Popen(*args, **kwargs).wait()
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 543, in __init__
errread, errwrite)
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 975, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
Файл существует, и я могу запустить pdflatex /Users/Benjamin/Desktop/directory/ON.tex
в Терминале. Обратите внимание, что pdflatex выдает большое количество предупреждений ... но это не должно иметь значения, и это также выдает такую же ошибку:
return_value = subprocess.call(['pdflatex', '-interaction=batchmode', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)