Я думаю, что у ваших кодов есть проблема: у вас, кажется, есть OK = socket.socket()
, но я думаю, что это должно быть: OK = socket.socket(socket.AF_INET, socket.STREAM)
, что помогло бы, если бы вы установили соединение.И у вашего сервера проблема: OK.listn(1)
должно быть OK.listen(1)
.И не забывайте о send()
и recv()
.
#Client
import socket
Host='192.168.1.4'
Port=305
OK=socket.socket(socket.AF_INET, socket.STREAM)
OK.connect((Host,Port))
while True:
com = raw_input("Enter your command: ")
OK.send(com)
data = OK.recv(5000) #Change the buffer if you need to, I have it setup to run 5000
print "Received:\n" + data
, которые должны работать для клиента
#Server
import socket
import os
Host=''
Port=305
OK=socket.socket(socket.AF_INET, socket.STREAM)
OK.bind((Host,Port))
OK.listen(1)
conn, addr = OK.accept()
while True:
data = conn.recv(2048) #Change the buffer if needed
if data == "":
break
r = os.system(data)
conn.send(str(r)) #Note this will send 0 or 1, 0 = ran, 1 = error
Примечание: эти исправления будут работать для Windows, я полагаюне знаю о системах Unix. *