Python3 网络模块
Python3 的网络模块主要指的是标准库中的 socket
模块,以及一些其他的模块,如 http
用于处理 HTTP 请求,xmlrpc
用于 XML-RPC 协议等。
以下是一个使用 socket
模块创建简单的 TCP 服务器和客户端的例子:
服务器端:
import socket
# 创建 socket 对象
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 获取本地主机名
host = socket.gethostname()
# 端口号
port = 12345
# 绑定端口
server_socket.bind((host, port))
# 设置最大连接数,超过后排队
server_socket.listen(5)
while True:
# 建立客户端连接
client_socket, addr = server_socket.accept()
print(f"连接地址: {addr}")
message = '服务器响应!' + "\r\n"
client_socket.send(message.encode('ascii'))
client_socket.close()
客户端:
import socket
# 创建 socket 对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 服务器端的 IP 地址和端口号
host = 'localhost'
port = 12345
# 连接服务器端
client_socket.connect((host, port))
# 接收小于 1024 字节的数据
msg = client_socket.recv(1024)
print(msg.decode('ascii'))
# 关闭客户端 socket
client_socket.close()
运行服务器端后,运行客户端将会从服务器接收到消息。
注意:在实际应用中,服务器和客户端代码需要错误处理和异常处理机制,以确保稳健性和安全性。上述代码仅用于演示基本的网络通信。
评论已关闭