Python实现局域网内实时通信的Socket编程示例
本文介绍如何使用Python的Socket模块在局域网内实现实时数据通信。通过ThreadingTCPServer构建多线程服务端,利用SocketClient建立客户端连接,实现本地服务器向客户端实时推送数据的功能。代码包含完整的IP端口配置及异常处理机制,适用于本地服务器持续运算并实时分发数据的场景。
局域网实时通信应用场景
该方案适用于本地服务器持续进行数据运算的场景,需将实时生成的数据发送给客户端。在局域网环境下,其他客户端可以独立连接至服务器并获取数据,各连接之间互不干扰,确保通信的实时性与稳定性。
Python服务端代码实现
以下是基于Python 2的服务端实现代码。
服务端核心逻辑
#-*- coding:utf-8 -*-
__author__ = 'xiaomei'
import socket
import SocketServer
HOST = '192.168.0.105' #服务器的IP
PORT = 15681 #设置端口
class MyServer(SocketServer.BaseRequestHandler):
def handle(self):
while True:
client = self.request
print('客户已链接')
#buf = client.recv(1024)
#print('接收到的',buf)
try:
client.send("11")#要发送的数据,类型为str。若要发送字典、列表可以用json.dumps转换
except:
print('socket.error')
return
server = SocketServer.ThreadingTCPServer((HOST, PORT), MyServer)
server.serve_forever()
Python客户端代码实现
以下是基于Python 2的客户端实现代码。
客户端连接与接收逻辑
#-*- coding:utf-8 -*-
__author__ = 'xiaomei'
import socket
s = socket.socket()
host = '192.168.0.105' #服务器的IP
port = 15681 #服务器的端口
s.connect((host,port))
while True:
try:
received = s.recv(1024)#接收的数据类型为str,若传过来的是字典或列表可以用json.loads转换
print(received)
except:
print('error')
总结
以上即为Python实现局域网内实时通信的完整代码示例,供读者参考使用。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









