2011-02-12 143 views
2

我有全功能的python程序,我从shell运行。所有参数和选项都使用选项解析器提供。我想要做的是使用django为此程序创建简单的Web界面。python和django:从django web窗体执行python脚本?

我把堆叠在从web窗体接收到的值转化为python脚本)) 其实我该如何执行python脚本?

在此先感谢!

回答

0

如果你的Python程序有一点,看起来像这样:

import sys 
if __name__ == "__main__": 
    args = sys.argv 
    main(args) 

然后,只需导入它,并调用它的main()方法,在相同的格式,sys.argv中的ARGS。排序。这将是做事的pythonic方式。

否则,您需要从python - os.system及其朋友执行外部程序的一般方式。这在其他地方也有介绍

+0

任务是为脚本编写简单的Web界面,而不对脚本进行任何更改。所以我不得不用args和opts构造字符串,例如scr.py -h host.com -p 22 ....我设法按照以下方式做到这一点。在我的viwes.py函数中处理从表单写入值到列表中的数据,例如['-h host.com',' - p 22']。然后我调用我的脚本runner = SubprocessThread('python scr.py%s'%(holder.args_and_opts)),其中args_and_opts =“”.join(list)。 – Andriy 2011-02-14 06:54:33