Python 使用cgitb获取HTML正文

Python 使用cgitb获取HTML正文,python,cgi,cgitb,Python,Cgi,Cgitb,我正在使用cgitb(Python2.7)在服务器端创建html文档。我有一个文件,它执行一系列查询,然后生成html。我想能够只链接html,所以如果我可以打印html到一个新的文件并链接,它会工作 有没有一种方法可以获取页面在处理结束时生成的html,这样我就可以将其放入一个新文件中,而不必跟踪我迄今为止所做的一切 编辑:在此处找到一个剪贴: 您必须在导入cgi后调用它,因为它以一种不太友好的方式覆盖stdout。但它像一个符咒 我刚刚导入了cgi;。。。。。。。 Tee(filname,“

我正在使用cgitb(Python2.7)在服务器端创建html文档。我有一个文件,它执行一系列查询,然后生成html。我想能够只链接html,所以如果我可以打印html到一个新的文件并链接,它会工作

有没有一种方法可以获取页面在处理结束时生成的html,这样我就可以将其放入一个新文件中,而不必跟踪我迄今为止所做的一切

编辑:在此处找到一个剪贴:

您必须在导入cgi后调用它,因为它以一种不太友好的方式覆盖stdout。但它像一个符咒

我刚刚导入了cgi;。。。。。。。 Tee(filname,“w”),然后我有一个指向该文件的链接。

来自

或者,您可以将此信息保存到文件中,而不是发送到浏览器

在这种情况下,您需要使用

cgitb.enable(display=1, logdir=directory)

或者,您可以将此信息保存到文件中,而不是发送到浏览器

在这种情况下,您需要使用

cgitb.enable(display=1, logdir=directory)

这似乎只是声称要打印回溯。它也不适合我。我正在做cgib.enable(1,'/tmp/test.html'),它似乎什么都没做,即使是在错误退出时也是如此。目录,而不是文件如何在非错误退出时使用cgib?我不这么认为。我该如何设置它呢?所以cgitb做错误报告,如果你的程序运行良好,那么cgitb永远不会得到处理。也许你想把你的stdout放在T恤上?结果证明这正是我想要的:这似乎只是声称要打印回溯。它也不适合我。我正在做cgib.enable(1,'/tmp/test.html'),它似乎什么都没做,即使是在错误退出时也是如此。目录,而不是文件如何在非错误退出时使用cgib?我不这么认为。我该如何设置它呢?所以cgitb做错误报告,如果你的程序运行良好,那么cgitb永远不会得到处理。也许你想试试你的标准装置?事实证明,这正是我想要的:你是否在使用cgitb的回溯功能?你确定你不只是想要cgi吗?你使用cgitb是为了它的回溯能力吗?你确定你不只是想要cgi吗?
import cgitb
import sys

try:
    ...
except:
    with open("/path/to/file.html", "w") as fd:
        fd.write(cgitb.html(sys.exc_info()))