Python基于socket怎么实现TCP客户端和服务端
发表于:2024-09-24 作者:千家信息网编辑
千家信息网最后更新 2024年09月24日,这篇文章主要讲解了"Python基于socket怎么实现TCP客户端和服务端",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python基于socket
千家信息网最后更新 2024年09月24日Python基于socket怎么实现TCP客户端和服务端
这篇文章主要讲解了"Python基于socket怎么实现TCP客户端和服务端",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python基于socket怎么实现TCP客户端和服务端"吧!
一、基于socket实现的TCP客户端
import socket # 建立socket对象# 参数一表示IP地址类型(AF_INET为IPV4,AF_INET6为IPV6),参数二表示连接的类型(SOCK_STREAM表示TCP形式,SOCK_DGRAM表示UDP形式)client_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 代表(ipv4,TCP) # 连接服务器(元组中填目标ip地址和端口号)client_socket.connect(('127.0.0.1',7777))# 准备数据,需要转换为二进制数据,encode()中填写的是本地的字符串编码格式,mac、linux填utf-8data='hello'.encode('gbk')# 向服务器发送数据client_socket.send(data)# 接收数据,必须要指定接收数据的大小,单位字节,最大4096,即4krecv_data=client_socket.recv(1024)# 接收的数据要进行decode()解码,发送的时候用啥编码就填啥编码recv_data=recv_data.decode('gbk')print(recv_data)# 关闭连接client_socket.close()
二、基于socket实现的TCP服务端
import socket# 建立socket对象server_socket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)# 如果服务器是一次性的,如果服务器结束后马上重新启动会出现一个错误,原因是地址和端口没有被释放# OSError: [Errno 48] Address already in use# 如果想马上释放,要设置一下socket选项server_socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,True)# 绑定IP和端口,如果在绑定IP时没有给定IP,默认是绑定本地IPserver_socket.bind(('',7777))# 设置监听(最大监听数),设置完后服务端会进入被动模式,不能主动连接客户端,只能被动地等待客户端的连接server_socket.listen(128)# 等待客户端连接,连接上后,函数会返回客户端的Socket对象和地址信息client_socket,ip_port=server_socket.accept()print(f'客户端{ip_port[0]}使用端口{ip_port[1]}连接成功...')# 接收客户端数据data=client_socket.recv(1024)# 查看客户端发送的数据长度if len(data)!=0: data=data.decode('gbk') print(f'客户端{ip_port[0]}使用端口{ip_port[1]}发送是数据是{data}')else: print(f'客户端{ip_port[0]}使用端口{ip_port[1]}关闭了连接') # 给客户端发送数据data='你好'.encode('gbk')client_socket.send(data)# 关闭客户端client_socket.close()# 关闭服务端server_socket.close()
感谢各位的阅读,以上就是"Python基于socket怎么实现TCP客户端和服务端"的内容了,经过本文的学习后,相信大家对Python基于socket怎么实现TCP客户端和服务端这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
客户
客户端
服务
数据
端口
地址
服务器
对象
编码
学习
最大
内容
参数
形式
端的
类型
马上
监听
主动
成功
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
安全加固服务器
方舟破解版服务器搭建
软件开发模型习题
城建大学网络安全与信息化中心
myd数据库文件怎么查看
jsp连接数据库实践报告
云服务器租赁多少钱一个
全国网络安全知识竞赛题库多选
打造服务器什么意思
长城服务器bmc管理口启动
崩三pc端服务器
河南晨飞互联网科技
网络安全专业考研复习资料
博思服务器
linux查文件行数据库
数据库的对象、属性与事件
济南飞腾服务器批发供应
百度关于网络安全
NGA数据库技术与应用
软件开发平台收费多少
网络安全讲座的论文
辽宁数据软件开发过程标准
网络技术路线有哪些
双击服务器管理器无反应
网络安全好读书知识版权画报
网络安全产业的前景
沈昌祥208网络安全宣传周
新华人寿高速公路网络安全
华为网络安全认证6
上海华盛恒辉软件开发公司