Skip to content

Instantly share code, notes, and snippets.

@hcastillaq
Created December 16, 2016 15:12
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hcastillaq/6c5c6d6ec23c22e4727e7c9c94f766c9 to your computer and use it in GitHub Desktop.
Save hcastillaq/6c5c6d6ec23c22e4727e7c9c94f766c9 to your computer and use it in GitHub Desktop.
Cliente para un chat utilizando sockets en python
import socket
import threading
import sys
import pickle
class Cliente():
"""docstring for Cliente"""
def __init__(self, host="localhost", port=4000):
self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
self.sock.connect((str(host), int(port)))
msg_recv = threading.Thread(target=self.msg_recv)
msg_recv.daemon = True
msg_recv.start()
while True:
msg = input('->')
if msg != 'salir':
self.send_msg(msg)
else:
self.sock.close()
sys.exit()
def msg_recv(self):
while True:
try:
data = self.sock.recv(1024)
if data:
print(pickle.loads(data))
except:
pass
def send_msg(self, msg):
self.sock.send(pickle.dumps(msg))
c = Cliente()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment