2 回答

TA贡献1851条经验 获得超5个赞
如果有人需要答案,这是一个使用subprocess模块的最小工作示例,该模块从读取输入stdin并在上输出转换后的字符串stdout。
# -*- coding: utf8 -*-
import subprocess
import os
PANDOC_PATH = r"path/to/pandoc"
def convert(text_to_convert):
pandoc = subprocess.Popen([os.path.join(PANDOC_PATH, 'pandoc.exe'), '-f', 'html', '-t', 'latex'], stdout=subprocess.PIPE, stdin=subprocess.PIPE, stderr=subprocess.PIPE)
output, error = pandoc.communicate(text_to_convert.encode('utf-8'))
converted_output = output
return converted_output.decode()

TA贡献2012条经验 获得超12个赞
如果检查pypandoc
源,您会看到它convert
只是在pandoc
使用正确的输入和输出流的情况下运行进程。
pandoc
找不到命令时发生错误。可能是您安装了pypandoc
并且忘记了pandoc
它本身。或者该命令不在您的外壳中PATH
。
添加回答
举报