python写一些简单的tcp服务器和客户端
2020-12-13 04:00
标签:发送 inf class 连接 ima input 特权 recv 端口号 代码贴上,做个记录 TcpClient TcpServer 客户端发送 服务端接收数据 python写一些简单的tcp服务器和客户端 标签:发送 inf class 连接 ima input 特权 recv 端口号 原文地址:https://www.cnblogs.com/mke2fs/p/11100568.html# -*- coding:utf-8 -*-
import socket
target_host = "127.0.0.1" #服务器端地址
target_port = 5555 #与服务器的端口号一致
while True:
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
client.connect((target_host,target_port))
#data存储要发送的数据
data = raw_input("请输入要发送的数据:")
#input对于接受输入是有问题的 raw_input()把所有输入都看做字符串
if not data:
break
client.send(data)
response = client.recv(1024)
print(response)
client.close()
# -*- coding:utf-8 -*-
import socket
import threading
bind_ip = "0.0.0.0" #监听所有可用的接口
bind_port = 5555 #非特权端口号都可以使用
#AF_INET:使用标准的IPv4地址或主机名,SOCK_STREAM:说明这是一个TCP服务器
server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#服务器监听的ip和端口号
server.bind((bind_ip,bind_port))
print("[*] Listening on %s:%d" % (bind_ip,bind_port))
#最大连接数
server.listen(5)
#客户处理线程
def handle_client(client_socket):
request = client_socket.recv(1024)
print("[*] Received: %s" % request)
#向客户端返回数据
client_socket.send("滴,打卡成功!")
client_socket.close()
while True:
#等待客户连接,连接成功后,将socket对象保存到client,将细节数据等保存到addr
client,addr = server.accept()
print("[*] Acception connection from %s:%d" % (addr[0],addr[1]))
client_handler = threading.Thread(target=handle_client,args=(client,))
client_handler.start()