Обработка данных из сокета
данные из сокета получаются с помощью следующей функции:
def ip_connect(self):
HOST = '127.0.0.1' # Standard loopback interface address (localhost)
PORT = 12345 # Port to listen on (non-privileged ports are > 1023)
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
s.bind((HOST, PORT))
s.listen()
conn, addr = s.accept()
with conn:
print('Connected by', addr)
while True:
print(123)
request = conn.recv(1024)
msg_size = 0
if msg_size == 0:
if len(request) < 2:
pass
else:
len_message = int.from_bytes(request[:2], 'big')
if len(request) < len_message:
pass
else:
message = request[2:]
message = codecs.decode(message, 'UTF-8')
message = message[1 : -1]
msg_to_list = message.split(',')
data = []
for msg in msg_to_list:
msg = msg.split(':')
msg = msg[1][1:-1]
data.append(msg)
msg_size == 0
Как только пришло сообщение, необходимо передать его в другую функцию, в которой оно будет обрабатываться. Я пробовал использовать yield, но не работает