python+socket服务端和客户端

简介: python+socket服务端和客户端

 服务端代码:

importsocketimporttimeprint("服务端开启")
# 创建套接字mySocket=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置IP和端口# host = socket.gethostname()host='127.0.0.1'port=3333# bind绑定该端口mySocket.bind((host, port))
# 监听mySocket.listen(10)
whileTrue:
# 接收客户端连接print("等待连接....")
client, address=mySocket.accept()
print("新连接")
print("IP is %s"%address[0])
print("port is %d\n"%address[1])
whileTrue:
# 发送消息msg="连接成功"client.send(msg.encode(encoding='utf-8'))
print("发送完成")
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())))  # 格式化时间戳为标准格式ifmsg=="EOF":
breakifmsg=="quit":
client.close()
mySocket.close()
print("程序结束\n")
exit()
# 读取消息msg=client.recv(1024)
print("服务端接收:", msg.decode("utf-8"))  # 把接收到的数据进行解码print("读取完成")
ifmsg==b"EOF":
breakifmsg==b"quit":
client.close()
mySocket.close()
print("程序结束\n")
exit()

image.gif

客户端代码:连接后保持连接

importsocketprint("客户端开启")
# 创建套接字mySocket=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 设置ip和端口# host = socket.gethostname()host='127.0.0.1'port=3333try:
mySocket.connect((host, port))  ##连接到服务器print("连接到服务器")
except:  ##连接不成功,运行最初的ipprint('连接不成功')
while1:
# 接收消息msg=mySocket.recv(1024)
print("客户端接收:%s"%msg.decode("utf-8"))  # 把接收到的数据进行解码print("读取完成")
ifmsg==b"EOF":
breakifmsg==b"quit":
mySocket.close()
print("程序结束\n")
exit()
# 发送消息msg=input("客户端发送:")
mySocket.send(msg.encode(encoding='utf-8'))
print("发送完成")
ifmsg=="EOF":
breakifmsg=="quit":
mySocket.close()
print("程序结束\n")
exit()
print("程序结束\n")

image.gif

客户端代码:发送后自动断开连接

importsocketsk=socket.socket()
sk.connect(('127.0.0.1',3333))
msg=sk.recv(1024).decode('utf-8')  # 最多接受1024字节print(msg)
sk.send('你好'.encode('utf-8'))
#sk.close()

image.gif

image.gifimage.gif


目录
相关文章
|
7月前
|
网络协议 开发者 Python
Socket如何实现客户端和服务器间的通信
通过上述示例,展示了如何使用Python的Socket模块实现基本的客户端和服务器间的通信。Socket提供了一种简单且强大的方式来建立和管理网络连接,适用于各种网络编程应用。理解和掌握Socket编程,可以帮助开发者构建高效、稳定的网络应用程序。
314 10
|
12月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
437 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
12月前
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
527 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
11月前
|
Kubernetes 网络协议 Python
Python网络编程:从Socket到Web应用
在信息时代,网络编程是软件开发的重要组成部分。Python作为多用途编程语言,提供了从Socket编程到Web应用开发的强大支持。本文将从基础的Socket编程入手,逐步深入到复杂的Web应用开发,涵盖Flask、Django等框架的应用,以及异步Web编程和微服务架构。通过本文,读者将全面了解Python在网络编程领域的应用。
162 1
|
12月前
|
消息中间件 监控 网络协议
Python中的Socket魔法:如何利用socket模块构建强大的网络通信
本文介绍了Python的`socket`模块,讲解了其基本概念、语法和使用方法。通过简单的TCP服务器和客户端示例,展示了如何创建、绑定、监听、接受连接及发送/接收数据。进一步探讨了多用户聊天室的实现,并介绍了非阻塞IO和多路复用技术以提高并发处理能力。最后,讨论了`socket`模块在现代网络编程中的应用及其与其他通信方式的关系。
896 3
|
12月前
|
网络协议 测试技术 网络安全
Python编程-Socket网络编程
Python编程-Socket网络编程
119 0
|
网络协议 开发者 Python
深度探索Python Socket编程:从理论到实践,进阶篇带你领略网络编程的魅力!
【7月更文挑战第25天】在网络编程中, Python Socket编程因灵活性强而广受青睐。本文采用问答形式深入探讨其进阶技巧。**问题一**: Socket编程基于TCP/IP,通过创建Socket对象实现通信,支持客户端和服务器间的数据交换。**问题二**: 提升并发处理能力的方法包括多线程(适用于I/O密集型任务)、多进程(绕过GIL限制)和异步IO(asyncio)。**问题三**: 提供了一个使用asyncio库实现的异步Socket服务器示例,展示如何接收及响应客户端消息。通过这些内容,希望能激发读者对网络编程的兴趣并引导进一步探索。
170 4
|
开发者 Python
Python Socket编程:不只是基础,更有进阶秘籍,让你的网络应用飞起来!
【7月更文挑战第25天】在网络应用蓬勃发展的数字时代,Python凭借其简洁的语法和强大的库支持成为开发高效应用的首选。本文通过实时聊天室案例,介绍了Python Socket编程的基础与进阶技巧,包括服务器与客户端的建立、数据交换等基础篇内容,以及使用多线程和异步IO提升性能的进阶篇。基础示例展示了服务器端监听连接请求、接收转发消息,客户端连接服务器并收发消息的过程。进阶部分讨论了如何利用Python的`threading`模块和`asyncio`库来处理多客户端连接,提高应用的并发处理能力和响应速度。掌握这些技能,能使开发者在网络编程领域更加游刃有余,构建出高性能的应用程序。
117 3
|
网络协议 Python
网络世界的建筑师:Python Socket编程基础与进阶,构建你的网络帝国!
【7月更文挑战第26天】在网络的数字宇宙中,Python Socket编程是开启网络世界大门的钥匙。本指南将引领你从基础到实战,成为网络世界的建筑师。
167 2

推荐镜像

更多