Py学习  »  Python

Python使用UDP协议实现局域网内屏幕广播

Python小屋 • 3 年前 • 417 次点击  
推荐图书:
《Python可以这样学》,ISBN:9787302456469,董付国,清华大学出版社,第9次印刷

图书详情(京东)
董付国老师所有图书均提供配套教学资源。
==============
3年前推送过一篇使用TCP协议进行局域网内屏幕广播的文章,见
Python实现局域网内屏幕广播的技术要点分析

众所周知,TCP协议尽管有良好的流量控制、拥塞控制等传输质量保证机制,但开销比较大且只能单播。尽管当时的设计中结合了多线程技术,在局域网内机器多的时候仍有一定的延迟,并且教师机压力较大。

本文使用UDP协议重新实现这一功能,虽然UDP协议没有流量控制等QoS保障技术,但能够进行广播,这一点能给教师机减轻大部分压力。虽然确实有丢包的可能,但在局域网内丢包率非常低,视频、音频数据的传输又恰好容错性较好,不需要在应用层实现可靠传输。所以,UDP协议在视频点播类似的场合中有着重要应和优势

功能描述:

局域网内屏幕广播与分享。发送端运行程序后每秒中对自己计算机屏幕截图两次,发送给局域网内所有计算机,其他计算机作为接收端接收到数据之后还原为图像并在本地显示。

参考代码:

1)发送端

运行界面:

2)接收端,我故意在代码中删掉了一个语句,设计了一个bug,按照这个代码抄下来运行一会儿屏幕会卡住,重新启动之后就能继续,再过一会儿又会卡住。能够找出这个bug原因并解决的朋友可以在文末留言,第一位成功解决并留言的朋友可以获得董付国老师任意一本图书,时间不限。程序中注释的部分代码有其他用途,可以忽略。

运行界面:


需要软件的朋友可以在公众号后台发送消息“屏幕广播”获取打包好的软件,打包好的软件是完整的,不存在前面说的缺少一条语句造成的bug。

使用方法演示:



温馨提示
关注本公众号“Python小屋”,通过菜单“最新资源”==>“历史文章”可以快速查看分专题的1000篇技术文章列表(可根据关键字在页面上搜索感兴趣的文章),通过“最新资源”==>“微课专区”可以免费观看500节Python微课,通过“最新资源”==>“培训动态”可以查看近期Python培训安排,通过“最新资源”==>“教学资源”可以查看Python教学资源。
---董付国老师Python系列图书---
友情提示:不建议购买太多,最好先通过京东、当当、天猫查阅图书了解目录和侧重点,然后再选择购买适合自己的书。
(1)《Python程序设计(第2版)》(ISBN:978-7-302-43651-5),清华大学出版社,2016年8月出版,2019年度清华大学出版社畅销图书
(2)《Python可以这样学》(ISBN:978-7-302-45646-9),清华大学出版社,2017年2月
(3)《Python程序设计基础(第2版)》(ISBN:978-7-302-49056-2)清华大学出版社,2018年1月出版,2019年度清华大学出版社畅销图书
(4)《中学生可以这样学Python》(ISBN:978-7-302-48039-6)清华大学出版社
(5)《Python程序设计开发宝典》(ISBN:978-7-302-47210-0)清华大学出版社,2018年10月
(6)《玩转Python轻松过二级》(ISBN:978-7-302-49916-9)清华大学出版社,2018年5月
(7)《Python程序设计基础与应用(ISBN:978-7-111-60617-8),机械工业出版社,2018年9月
(8)Python程序设计实验指导书》(ISBN:9787302525790),清华大学出版社,2019年4月
(9)《Python编程基础与案例集锦(中学版)(ISBN:978-7-121-35539-4),电子工业出版社,2019年4月
(10)大数据的Python基础》(ISBN:978-7-111-62455-4),机械工业出版社,2019年5月
(11)译作《Python程序设计》,机械工业出版社(华章),2018年11月
(12)繁体版《Python也可以这样学》,台湾博硕文化股份有限公司,2017年10月出版,本书为《Python可以这样学》在台湾发行的繁体版,两本书内容一样,不建议重复购买
(13)《Python程序设计实例教程》(ISBN:978-7-111-63198-9),机械工业出版社
(14)《Python数据分析、挖掘与可视化 》(ISBN:978-7-115-52361-7),人民邮电出版社,2019年12月

Python相关课程教材选用参考与建议
董付国老师Python在线课程资源使用方法
董付国老师6本Python教材PDF版免费阅读
《Python数据分析、挖掘与可视化》前3章书稿PDF免费阅读
《Python程序设计基础与应用》前3章书稿PDF免费阅读
号外号外--Python小屋刷题神器上线啦
《中学生可以这样学Python》84节微课免费观看地址

相关阅读

Python+socket完美实现TCP长连接保持存活

完美解决Python套接字编程时TCP断包与粘包问题

Python实现多进程/多线程同时下载单个文件

Python 3.8实现支持断点续传的网络文件下载功能

Python+winreg+netifaces查看网络接口信息

Python自动接收微信群消息并推送相应的公众号文章

Python+psutil获取本机所有联网的应用程序信息

Python多线程编程的一个掉进去不太容易爬出来的坑

Python+socket+多线程实现同时应答多客户端的自助聊天机器人

Python实现机房管理软件的文件分发功能

技术要点|Python监控学生端电脑屏幕自动识别学习状态

Python多线程与Socket编程综合案例:素数

Python批量下载电子邮件附件并汇总合并Excel文件

Python监视电子邮箱并提示收到新邮件

Python版课堂管理系统中使用UDP广播远程关闭客户端程序思路与源码

使用Python实现电子邮件群发功能

基于Python的电子教室软件中远程关机功能的原理与实现

Python获取本机所有IP地址

Python实现局域网内屏幕广播的技术要点分析

使用Python开发SQLite代理服务器

Python获取局域网内所有机器IP地址与网卡MAC地址

Python获取本机所有网卡的MAC地址

Python+flask+flask-email发送带附件的电子邮件

Python使用UDP协议打造在线时间服务器

使用Python开发会聊天的智能小机器人

Python使用TCP协议编写会聊天的小机器人

Python实现本机网络流量监视器

Python使用UDP广播实现服务器自动发现

Python网页注入挂马

Python监视域名对应IP地址变化情况


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