import socket import pickle import select TCP_PORT = 5050 BUFFER_SIZE = 1024 def newServerSocket(ip_addr): server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.bind((ip_addr, TCP_PORT)) server_socket.listen() return server_socket def recvObj(socket): ready_to_read, ready_to_write, in_error = select.select([socket], [], [socket], 20) if socket in ready_to_read: print('Server is ready to receive data ...') connected_socket, addr = socket.accept() print('Server is receiving data ...') all_data = b'' while True: data = connected_socket.recv(BUFFER_SIZE) if not data: break all_data = all_data + data return pickle.loads(all_data) return None def sendObj(ip_addr, obj): soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM) soc.connect((ip_addr, TCP_PORT)) data = pickle.dumps(obj) soc.send(data) soc.close() return False