python socket编程
python socket编程
server 端:
# coding: utf-8 """ 搭建简单服务器 """ import socket HOST = '127.0.0.1' # 获取本地主机名,cmd下用ipconfig命令查看 PORT = 12345 # 设置端口号 ADDR = (HOST, PORT) # 放在一起就是套接字了 # 1.监听本机的IP和端口 client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) # 创建socket对象 client.bind(ADDR) # 绑定端口 client.listen(5) # 等待客户端连接,参数为TCP连接队列的大小,就是连接数;支持排队等待5人,还是要一个一个来; print('sever is wait listening...') while True: # 2.等待,等待有人来连接(阻塞) client_connection, client_address = client.accept() # 建立客户端连接,等待客户端来连接(阻塞:没有连接就一直在这里等) print(client_address) # 打印客户端发来的嵌套字,其实就是ip、port,如:(‘192.268.20.23’,52378) # 3.等待,等待连接者发送消息(阻塞) data = client_connection.recv(1024) # 等待接收客户端发来数据 print(data) print(data.decode('utf-8')) # 4.给连接者回复消息 client_connection.send(str.encode("connect OK")) # 向客户端发送信息,需要byte类型的参数,需要做一下转换 # 5.关闭连接 client_connection.close() # 关闭连接 # 6.停止服务端程序 client.close()
client端:
""" 简易客户端 """ import socket HOST = '127.0.0.1' #获取本地主机名 PORT = 12345 #设置端口号 ADDR = (HOST,PORT) # 1.向指定IP发送链接请求 client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect(ADDR) #请求与服务器建立连接 # 2.链接成功后,发送消息给服务端 client.send(str.encode("client connect ok ...")) #向服务器发送信息 # 3.等待,消息的回复(阻塞) data = client.recv(1024) #接收数据 print(data) #打印出接受到的数据 # 4.关闭连接 client.close()
例子:
智障客服
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通