Hallo
Ich möchte einen Chatserver und den zugehörigen Clienten in Python schreiben, dessen ein- und Ausgabe ausschließlich auf der Konsole stattfinden sollen. Zu diesem Zweck habe ich bereits etwas Code auf die Beine gestellt, leider ist er noch nicht in der Lage, mehr als einen Clienten zu ver und bearbeiten. Ich stelle die Scripts einfach mal hier rein:
Server.py
# Echo server program
# -*- coding: utf-8 -*-
import socket
import time
HOST = '192.168.10.24' # localhost
PORT = 50007 # port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(5)
conn, addr = s.accept() # Verbindung aufbauen
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: # was schief gelaufen
print 'break'
time.sleep(5) # kurz schlafen schicken
print 'Try one more Time . . .'
conn, addr = s.accept()
print 'Connected by', addr
else: # Daten empfangen
print data
if data == 'ENDE': # Magic Key: ENDE
conn.send("Ciao")
break
else:
conn.send(data)
Und nun der Client:
Client.py
# Echo client program
# -*- coding: utf-8 -*-
import socket
import time
HOST = '192.168.10.24' # localhost
PORT = 50007 # port
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
msg = 'Test'
while 1:
s.send( str(msg) )
data = s.recv(1024)
if data == "Ciao":
print 'Das wars . . .'
break
else:
print 'Received', repr(data)
time.sleep(1) # kurze Pause
msg = raw_input('Geben Sie etwas ein: ')
So weit so gut. Wenn ihr mir da helfen könnt, fänd ich das sehr nett.
Gruß
Tschapajew