我使用
从python中调用pdflatexexecuteCode = 'pdflatex -shell-escape "' + packageName + '.tex"'
result = os.system(executeCode)
但是,LaTeX文档可能有错误,在这种情况下,pdflatex会询问键盘输入。 对于python,这与无限循环相同。在PyScripter中我甚至无法阻止python。我必须杀死pdflatex。
现在我需要两件事 1.我想看看pdflatex的输出 2.我需要在控制台上与pdflatex进行交互
我该怎么做?
答案 0 :(得分:0)
如果您使用--interaction nonstopmode
选项,pdflatex将不会停止并要求输入。
使用subprocess
模块为您提供了有关如何处理该过程的更多选项。
subprocess.call(['pdflatex', '--interaction', 'nonstopmode', '-shell-escape', packageName + '.tex'])
您可以使用stdout
和stderr
选项将这些输出重定向到管道或文件。
如果要捕获程序的输出,请改用subprocess.check_output()
。