2016-04-10 11 views
1

Ich habe das Tutorial über python socket'ing von http://www.binarytides.com/python-socket-programming-tutorial/ verfolgt und den Quellcode ein bisschen modifiziert, um ein Client- und Serverskript zu erstellen. Der Server läuft soweit ich getestet habe ohne Probleme. Aber der Kunde ist mir eine harte Zeit mit ein nicht undestandable ungültigen Syntaxfehlern geben:
File "client.py", Zeile 17
.... versuchen:
.....^Ungültige Syntax socket.socket

Hier mein Quellcode:

#!/usr/bin/env python 
import socket, select, string, sys 

#***** prompt ***** 
def prompt() : 
sys.stdout.write('<You> ') 
sys.stdout.flush() 

#***** main func ***** 
if __name__ == "__main__": 
#if(len(sys.argv) < 3) : 
# print ("Usage : python telnet.py hostname port") 
# sys.exit() 

HOST = raw_input("Enter host:\n") 
PORT = int(raw_input("Enter port:\n") 
try : 
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
    s.settimeout(2) 
except socket.error, msg: 
    print("Failed to create socket. Error code: " + str(msg[0]) + " , Error message: " + msg[1] 

#***** connect to remote host ***** 
try : 
    s.connect((HOST, PORT)) 
except :  
    print ("Unable to connect") 
    sys.exit() 

print ("Connected to remote host. Start sending messages") 
prompt() 

while 1: 
    socket_list = [sys.stdin, s] 

    #***** Get the list sockets which are readable ***** 
    read_sockets, write_sockets, error_sockets = select.select(socket_list , [], []) 

    for sock in read_sockets: 
     #***** incoming message from remote server ***** 
     if sock == s: 
      data = sock.recv(4096) 
      if not data : 
       print ("\nDisconnected from chat server") 
       sys.exit() 
      else : 
       #print data 
       sys.stdout.write(data) 
       prompt() 

     #***** user entered a message ***** 
     else : 
      msg = sys.stdin.readline() 
      s.send(msg) 

Antwort

3

die Linie

PORT = int(raw_input("Enter port:\n") 

das Schließen fehlt).

Faustregel: seltsamer Syntaxfehler -> siehe oben.

+0

Oh wow, wie könnte ich so blind sein ... ^^ danke für das Aufzeigen. – Cryo

+0

@Cryo kein Problem – timgeb