简化非技术用户脚本的使用

时间:2013-03-06 13:05:50

标签: python user-interface

美好的一天,

我有一个脚本,它从网站收集各种信息并在控制台中返回。然后,我将信息的各个行复制到几个不同的报告中。这对我来说很好,但普通用户可能会因为打开脚本进行编辑,运行它以及在IDLE控制台中工作而感到困惑。但是,为了保持连续性,我正在寻找一种简化非技术用户脚本使用的方法。

重要的一点是我的技术限制。我工作的系统安装了Python 2.6.5。该脚本必须从网络驱动器运行并且与系统无关(没有安装)。我无法在开发测试平台上安装任何东西。

理论上,我会更喜欢GUI,因为这是大多数用户所熟悉的,但是,我所研究的流行的需要安装插件,我不能这样做。

我考虑过将结果输出到文本文件,但我不确定如何自动打开文本文件供用户操作。

我不确定Python是这个或完整解决方案的最佳解决方案,因此我正在寻找使用标准Windows功能且不需要任何安装或管理权限的创意。

部署系统是Windows XP和Windows 7.

2 个答案:

答案 0 :(得分:0)

您可以使用Bottle等微框架将信息输出到简单的网站。

你不需要更多的单个bottle.py文件来使用它,它适用于Python 2.6

答案 1 :(得分:0)

您担心用户“打开脚本进行编辑,运行以及在IDLE控制台中工作”。为什么他们需要这样做?可能指定要访问的网站,对吗?修改您的脚本以询问用户的网站,他们将能够运行脚本:

website = raw_input("Please enter the name of a website to scrape ")
scrape_and_save(website)

用户只需双击您的脚本,它就会弹出一个控制台窗口,询问一个URL,然后运行并退出。 (为了防止控制台关闭,请将raw_input("press RETURN to exit ")添加到脚本的末尾。)它看起来很丑,但它确实有效。但是,从cmd窗口复制文本并不容易。

要在编辑器中显示结果,您可以这样做:

import subprocess
subprocess.call(["start", "myoutput.txt"])

这要求Windows在您双击myoutput.txt文件(可能是记事本)时使用它使用的任何编辑器打开.txt

附录:如果目标受众知道命令行,则可以将URL作为参数传递。像这样调用你的脚本

% python myscript.py http://example.com

您的脚本可以在数组sys.argv中找到该网站。