python实现局域网内实时通信代码

yipeiwu_com6年前Python基础

使用场景,本地服务器一直在运算数据,实时发送这些数据给客户端,本地局域网内其他客户,可以实时连接服务器,获取服务器数据,互不影响。

python2服务端

#-*- 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()

python2客户端

#-*- 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实现局域网内实时通信代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Tornado实现多进程/多线程的HTTP服务详解

用tornado web服务的基本流程 1.实现处理请求的Handler,该类继承自tornado.web.RequestHandler,实现用于处理请求的对应方法如:get、post...

判断python字典中key是否存在的两种方法

今天来说一下如何判断字典中是否存在某个key,一般有两种通用做法,下面为大家来分别讲解一下: 第一种方法:使用自带函数实现。 在python的字典的属性方法里面有一个has_key()方...

tornado框架blog模块分析与使用

复制代码 代码如下:#!/usr/bin/env python## Copyright 2009 Facebook## Licensed under the Apache License...

opencv-python 读取图像并转换颜色空间实例

我就废话不多说了,直接上代码吧! #-*- encoding:utf-8 -*- ''' python 绘制颜色直方图 ''' import cv2 import numpy as...

Python中利用sorted()函数排序的简单教程

排序算法 排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大...