将更新从Python服务器推送到web界面

将更新从Python服务器推送到web界面,python,web-frontend,Python,Web Frontend,我已经用python编写了一个算法和一个web界面。提交表单并启动算法后,我希望在页面运行时推送并更新页面上的数据。如何实现这一点?要在网页之间进行实时或半实时通信,选项如下 使用HTML中的meta refresh标记在特定秒后自动刷新页面 使用JavaScript和AJAX获取更新的数据HTTP GET: 使用服务器发送的事件: 使用WebSocket: 除第一种方法外,所有方法都需要基本的JavaScript技能,此外还需要了解服务器端Python。后两种方法建议对实时通信有更深入的了

我已经用python编写了一个算法和一个web界面。提交表单并启动算法后,我希望在页面运行时推送并更新页面上的数据。如何实现这一点?

要在网页之间进行实时或半实时通信,选项如下

  • 使用HTML中的meta refresh标记在特定秒后自动刷新页面

  • 使用JavaScript和AJAX获取更新的数据HTTP GET:

  • 使用服务器发送的事件:

  • 使用WebSocket:

除第一种方法外,所有方法都需要基本的JavaScript技能,此外还需要了解服务器端Python。后两种方法建议对实时通信有更深入的了解。因此,如果您不熟悉web开发,我建议您选择meta refresh标记


在服务器端,您需要启动一个进程或线程来处理长时间运行的进程,然后让该进程将其进度写入数据库。当web UI自我更新时,它会从数据库中读取最新的结果,并将其推/拉回到浏览器。

我之所以用python而不是基于web的语言编写它,是因为我打算将其作为桌面应用程序。不过,我倾向于将其移植到web上。要实现真正的推送,请使用Tornado或类似的框架。