用python脚本动态更新静态网页

2024-03-28 19:38:17 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我使用了一个带有rfid扫描仪的Raspberry pi2,用python编写了一个脚本,用于记录人们进出我们的考勤系统,连接到我们的postgresql数据库,并返回一些数据,比如他们的超时时间以及他们的操作是登录还是注销。在

这些数据是要显示在一个非常基本的网页上(这甚至不是在服务器或任何东西),只是作为一个图形界面显示所说的数据。在

我的问题是,我不知道如何在不刷新的情况下动态显示python脚本返回的数据。我希望它只是淡入信息,保持它在那里几秒钟,然后让它再次淡出(在这一点上,系统可以再次让其他人登录或注销)。在

目前我使用beauthoulsoup4编辑Html文件,并使用扩展名“LivePage”的Chrome来自动更新页面,这显然是一个糟糕的解决方案。在

我希望这里有人能为我指出正确的方向,我怎样才能以一种可理解且相当优雅的方式来解释这一点。在

DR:我想在网页上显示python脚本的结果,而不必刷新它。在


Tags: 数据服务器脚本数据库网页postgresql系统记录
3条回答

要立即更新页面数据,您需要使用websockets。 没有必要使用重框架。在

  1. 一旦页面加载完毕,您第一次用js打开websocket并收听它。在
  2. 每次你读到一个标签,你就把所有必要的数据放到这个开放的套接字上,它就会立即出现在客户端。在

我假设有一个或多或少显而易见的解决方案,比如用Flask构建一个restapi,并在前端使用一些javascript框架(例如Angular或{a3})超出了范围/太多了?在

除此之外,我只能考虑使用'plain'jquery或类似的框架,这或多或少就是您目前所做的。在

我建议你试试烧瓶/角型的组合。一个简单的应用程序(几个API端点用于登录和退出,以及一些检查)和一个具有动态内容的基本网站的设置非常迅速。在

您可以创建一个html文件,并每隔x秒向主文件发送XHR请求。在

setTimeout(function(){     
$.get( "yourPrimaryFile.xyz", function( data ) {
      $( "body" )
        .append(data) // Mr.X
    }) }, 3000);

相关问题 更多 >