开发TCP客户端实践
需要五个步骤:
创建TCP客户端 |
1.创建客户端套接字对象 |
2.和服务端套接字建立连接 |
3.发送数据 |
4.接收数据 |
5.关闭客户端套接字 |
代码见下面:
#导入socket套接字模块
import socket
#第一步,创建客户端的套接字 socket.AF_INET是IP地址类型ipv4/ipv6,socket.SOCK_STREAM 是传输协议
tcpline_usersocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#2.和服务端套接字建立连接
tcpline_usersocket.connect(("192.168.**.***",8080))
#3.发送数据
tcpline_usersocket.send("我发送东西了!".encode(encoding = 'htf-8'))
#4.接收数据
recv_data = tcpline_usersocket.recv(1024).decode('utf-8')
print(recv_data)
#5.关闭客户端套接字
tcpline_usersocket.close()
顺便创建一个服务端数据来接收上面客户端的数据,需要先说明的是创建服务端需要七步:
创建TCP服务端 |
1.创建客户端套接字对象 |
2.绑定ip地址和端口号 |
3.设置监听 |
4.等待接收客服端的连接请求 |
5.接收数据 |
6.发送数据 |
7.关闭客户端套接字 |
见下面的代码:
import socket
# 1、创建服务器端套接字对象
tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 2、绑定IP地址与端口号
tcp_server_socket.bind(("端口", 8888))
# 3、开启监听
tcp_server_socket.listen(128) #最多同时访问128人
# 4、等待接收客户端连接请求
conn_socket, ip_port = tcp_server_socket.accept()
print('客户端IP+端口:', ip_port)
# 5、接收数据
recv_data = conn_socket.recv(1024)
print('接收到的数据:', recv_data.decode())
# 6、发送数据
conn_socket.send("客户端的数据已经收到了".encode())
# 7、关闭套接字
conn_socket.close()
tcp_server_socket.close()
这个一定要掌握,下周会在此基础上生成静态网页。