虚位以待(AD)
虚位以待(AD)
首页 > 脚本专栏 > python > python Socket之客户端和服务端握手详解

python Socket之客户端和服务端握手详解
类别:python   作者:码皇   来源:互联网   点击:

这篇文章主要为大家详细介绍了python Socket之客户端和服务端握手,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据

1. 客户端socketClient.py代码

    import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 建立连接: s.connect(('127.0.0.1', 9999)) # 接收欢迎消息: print(s.recv(1024).decode('utf-8')) for data in [b'Michael', b'Tracy', b'Sarah']: # 发送数据: s.send(data) print(s.recv(1024).decode('utf-8')) s.send(b'exit') s.close()

2. 服务端serverSocket.py代码

    import socket import threading import time # from threading import Thread s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 监听端口: s.bind(('127.0.0.1', 9999)) s.listen(5) print('Waiting for connection...') def tcplink(sock, addr): print('Accept new connection from %s:%s...' % addr) sock.send(b'Welcome!') while True: data = sock.recv(1024) time.sleep(1) if not data or data.decode('utf-8') == 'exit': break sock.send(('Hello, %s!' % data.decode('utf-8')).encode('utf-8')) sock.close() print('Connection from %s:%s closed.' % addr) while True: # 接受一个新连接: sock, addr = s.accept() # 创建新线程来处理TCP连接: t = threading.Thread(target=tcplink, args=(sock, addr)) t.start()

3.操作过程

开两个控制台窗口,先运行服务端 python3 serverSocket.py

然后运行客户端 python3 socketClient.py

socket连接截图如下

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

  • python利用socketserver实现并发套接字功能
  • Python基于socket实现简单的即时通讯功能示例
  • Python简单实现socket信息发送与监听功能示例
  • Python Socket使用实例
  • python通过socket实现多个连接并实现ssh功能详解
  • Python探索之SocketServer详解
  • 基于python socketserver框架全面解析
  • python多线程socket编程之多客户端接入
  • Python+Socket实现基于TCP协议的客户与服务端中文自动回复聊天功能示例
  • python的socket编程入门
相关热词搜索: python Socket 客户端 服务端 握手