python进阶__用socket封装TCP

想要理解socket协议,点击链接,出门左转

 一、TCP 通信的服务器端编程的基本步骤:

  1. 服务器端先创建一个 socket 对象。
  2. 服务器端 socket 将自己绑定到指定 IP 地址和端口。
  3. 服务器端 socket 调用 listen() 方法监听网络。
  4. 程序采用循环不断调用 socket 的 accept() 方法接收来自客户端的连接
 1 #创建socket 对象  2 s = socket.socket()  3 #将socket 绑定到本机IP 地址和端口  4 s.bind (('192.168.1.88', 30000))  5 #服务器端开始监听来自客户端的连接  6 s.listen()  7 while True:  8 #每当接收到客户端socket 的请求时,该方法就返回对应的socket 和远程地址  9     c, addr = s.accept() 10     ...

 

二、TCP 通信的客户端编程的基本步骤:

  1. 客户端先创建一个 socket 对象。
  2. 客户端 socket 调用 connect() 方法连接远程服务器。
 1 import socket  2 import struct  3  4 class SelfPackage:#将接口内容封装在类SelfPackage中  5 def __init__(self,ip,port):  6         self.IP= ip  7         self.Port= port  8         self.stopthread = True  9         self.client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)#创建客户端套接字,SOCK_STREAM对应协议类型为TCP 10         self.client.connect((self.IP, self.Port)) 11 12 def client_connect(self,ip,port):#客户端连接IP及端口 13         self.client=socket.socket() 14         self.client.connect((ip,port)) 15 return self.client 16 17 def get_current_msg(self):#客户端接收数据 18         status_msg = self.client.recv(2664)#每次接收2664字节 19 while len(status_msg)<2664: #如果接收到的字节长度不满2664,就要补齐,不能丢掉 20             status_msg += self.client.recv(2664) 21 return status_msg 22 23 def client_close(self):#关闭客户端 24         self.client.close()

 创建客户端实例:

socket_tcp1=SelfPackage(ip="192.168.1.1",port=2222)

 

 

中国有句古话:祸福无门,惟人自招,善恶之报,如影随形。细看世间事,都有因果可循,而这因果,就藏在每个人的选择里。你选择善良做人,温柔待人,勤恳做事,总有一天,会被世界温柔以待,得到相应的回报,你选择尖酸刻薄,处处算计,总有一天,会自食恶果,殃及自身。善待别人,就是善待自己;尊重别人,就是庄严自己;宽容别人,就是放过自己。 

 

商匡云商
Logo
注册新帐户
对比商品
  • 合计 (0)
对比
0
购物车