为Python应用创建网络接口的最佳策略是什么?
我创建了一个简单的基于gstreamer的Python音频应用程序,里面有一个GTK+图形界面,可以从一个XML列表中选择和播放网络音频流。然后,我把电脑的音频输出连接到一个老式的立体声接收器上,接收器上有大音箱,结果我就有了一个不错的音响系统,声音可以传遍我家大部分地方。
现在,我想添加一个网页用户界面,这样我就可以在离电脑的房间远一点的地方远程控制这个应用程序,但到目前为止,我的所有尝试都没有成功。
我特别想知道,是否可以创建一种像GTK GUI那样的信号套接字,以便运行一些方法来改变gstreamer的参数。
或者有没有更现实、更可行的策略呢?
提前感谢任何帮助!
3 个回答
0
我建议你使用一些轻量级的纯Python网页服务器选项,可以选择写一个独立的WSGI应用程序,或者使用一个微框架。
Gevent是个不错的选择:http://www.gevent.org/servers.html
这里有一个使用Gevent的WSGI应用程序的示例实现: https://bitbucket.org/denis/gevent/src/tip/examples/wsgiserver.py#cl-4
如果你想用微框架的话,我推荐Flask。
1
最快最简单的方法可能就是使用 cgi脚本。如果你想要更高级一点的做法,可以考虑使用像django、turbogears这样的网页框架。
4
你可以使用Bottle,这是一个非常简单的微型网页框架。
Bottle是一个快速、简单且轻量级的WSGI微型网页框架,专门为Python设计。它以单个文件的形式分发,除了Python标准库外,没有其他依赖。
你好,世界:
from bottle import route, run
@route('/hello/:name')
def index(name='World'):
return '<b>Hello %s!</b>' % name
run(host='localhost', port=8080)