社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

当心啊!仅仅50行Python,就可以在手机端看小姐姐的电脑桌面!

马哥Linux运维 • 5 年前 • 687 次点击  

看上心意的小姐姐,想看她平时都浏览什么网页,如何才能看她的桌面呢,都说Python很厉害,这次我们做一个利用移动端访问电脑来查看电脑的界面的神器!


不知道大家以前有没有做过这方面的东西呢?也许大家听起来还有点不太理解,没有关系,下面小编就带领大家来看一下这个炫酷的操作,程序运行的结果如下图所示。


上图是程序执行的图片,而下图是在手机端访问电脑时,所返回的电脑端的界面,为了更加直观的进行展示,小编特地为大家做了一个小的展示视频,如下图所示:


视频镇楼




从视频中,我们可以看到,经过手机端可以访问到电脑此时桌面的显示内容,而且是不断的进行刷新显示的,当我们切换电脑的桌面后,手机端进行下一次的刷新之后同样会显示此时电脑桌面的显示内容。



原理解释


下面,小编就来为大家阐述这个操作是如何完成的吧,这里我们用到了基于python的网络编程。程序很简单,只有短短的五十行左右,其核心代码如下图所示。


  • 首先我们需要将我们的电脑用作客户端;

  • 然后通过实例化一个socket来监听有无客户端进行请求,当没有客户端进行请求时,服务端端口就一直监听等待;

  • 当有客户端进行请求时便进行服务端与客户端的数据传输,示意图如下所示。

当我们的数据服务端向客户端进行数据传输时,有一个默认的传输内容,我们通过获取客户端获取到的内容,可以对服务端传输的内容进行更改,我们将服务端传输的内容改成下图所示的html内容。

此时客户端所收到的内容中便会携带“desktop.png”关键词,当满足这个条件时,我们只需要调用PIL库中的截屏函数,并将截屏后的图像传输给客户端即可。然后客户端就会展现出来服务端返回的内容,也就是当前页面的图像了。


最后透露一下:是如何访问服务端的接口呢?很简单,我们只需要在任何一个浏览器下输入“IP:PORT”即可。这个IP就是服务端的IP地址,而PORT就是服务端进行监听的端口号,如下图所示:



以上就是小编为大家带来的小分享,大家也赶快动手实践起来吧。

Linux云计算课程全新升级,云计算+安全+DevOps上线,面授班12月9日开班,120天冲击年薪30万,改变速约~~~~


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/50203
 
687 次点击