python 输出结果到web页面_websocket+Django+python+paramiko实现web页面执行命令并实时输出...

本文介绍了如何使用Django、WebSocket和Paramiko实现通过Web页面远程执行命令并实时展示执行结果。首先,概述了WebSocket的工作流程和Paramiko模块的功能。接着,展示了通过Django和WebSocket创建视图函数,利用Paramiko执行shell脚本的过程。当用户点击按钮时,脚本在服务器执行,并将输出实时推送到Web页面。最后,提供了项目的目录结构和依赖包,并指出此实现并非真正的实时输出,而是命令执行完成后一次性显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

WebSocket

WebSocket的工作流程:浏览器通过JavaScript向服务端发出建立WebSocket连接的请求,在WebSocket连接建立成功后,客户端和服务端就可以通过 TCP连接传输数据。因为WebSocket连接本质上是TCP连接,不需要每次传输都带上重复的头部数据,所以它的数据传输量比轮询和Comet技术小很多。

paramiko

paramiko模块,基于SSH用于连接远程服务器并执行相关操作。

shell脚本

/opt/test.sh

#!/bin/bashfor i in {1..10}do

sleep 0.5

echo母鸡生了$i个鸡蛋;done

网页执行脚本,效果如下:

怎么样,是不是很nb!下面会详细介绍如何具体实现!

二、详细操作

django版本

最新版本 2.1.5有问题,使用websocket,谷歌浏览器会报错

WebSocket connection to 'ws://127.0.01:8000/echo_once/' failed: Error during WebSocket handshake: Unexpected response code: 400

所以不能使用最新版本,必须使用 2.1.4以及2.x系列都可以!

安装模块

pip3 install paramiko dwebsocket django==2.1.4

创建项目

使用Pycharm创建一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值