1
我注意到python cgi脚本只有在它完成执行后才显示输出,有没有办法,我可以让脚本继续执行并打印结果不断。我发现如果我在Apache中运行脚本“abc.py”,则输出会连续显示(脚本继续执行),但是从另一个脚本调用脚本不起作用。Python cgi脚本仅在完成后才在浏览器中显示输出
下面的代码: - (abc.py)
import sys, time
#sys.stdout.write('Content-Type: text/html;charset=utf-8\r\n\r\n')
#print '<html><body>'
for i in range(10):
print '<div>%i</div>'%i
sys.stdout.flush()
time.sleep(1)
我想运行从另一个CGI脚本此脚本。现在当我调用这个脚本时(在Apache中使用下面的脚本),输出仅在完成后才被打印。有没有办法解决它。
print 'Content-Type: text/html;charset=utf-8\r\n\r\n'
print '<html><body>'
PIPE = subprocess.PIPE
pd = subprocess.Popen(['abc.py'],
stdout=PIPE, stderr=PIPE)
stdou, stder = pd.communicate()
sys.stdout.write(stdou)
sys.stdout.flush()
你确定这不是等待收盘''