可以子流程.Popen从Apache2中mod_wsgi下运行的py代码调用时使用

2024-05-16 01:25:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我在用子流程.Popen在mod\wsgi下运行时会出现IOErrors。下面的代码将在python术语或django runserver中工作,并在mod\upython下运行。如果你把它放在mod wsgi(v2)下,它就会失败:(2,'No this file or directory')我已经尝试过很多涉及使用的变体子流程.管道. 我试图重新定义stdout,并使用httpd指令来关闭mod\wsgi对stdout用法的抱怨。我最近尝试升级到版本3。在

import subprocess

input_file = 'test.html'

p = subprocess.Popen(['htmldoc','-f', 'output.pdf', '--book', input_file])

p.communicate()

len(open('output.pdf').read())

我的测试工作将是回到mod\upython,看看问题是否会消失。我想知道是否有其他人做过这件事,并能对这个问题有所了解。在


Tags: 代码modwsgiinputoutputpdfstdout流程
1条回答
网友
1楼 · 发布于 2024-05-16 01:25:07

该错误消息意味着Popen找不到{}。通过os.environ['PATH']检查$PATH环境变量,并确保htmldoc安装在其中一个路径中。在

或者,可以使用绝对路径调用Popen。例如

subprocess.Popen(['/usr/bin/htmldoc', ...

相关问题 更多 >