1.安裝:
2.文檔:
https://docs.python.org/3/library/socket.html
3.
Client.py
"""import socket HOST = "127.0.0.1" PORT = 3333 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((HOST, PORT)) while 1: cmd = raw_input('Your command:').strip() s.sendall(cmd) result = s.recv(1024) print result s.close()"""import socketimport syshost = '127.0.0.1'port = 8888s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)print 'Socket Create'remote_ip = socket.gethostbyname(host)print 'Ip address of ' + host + ' is ' + remote_ips.connect((remote_ip,port))print 'Socket Connected to ' + host + ' on ip ' + remote_ipmessage = 'Hello's.sendall(message)print 'Message send successfully'reply = s.recv(4096)print replys.close()
Server.py
"""import SocketServer, os class MyTCPHandler(SocketServer.BaseRequestHandler): def handle(self): while True: self.data = self.request.recv(1024).strip() print "{}wrote:".format(self.client_address[0]) if not self.data: print "clilent %s is dead!" % self.client_address[0] break cmd_result = os.popen(self.data).read(); if len(cmd_result.strip()) != 0: self.request.sendall(cmd_result) else: self.request.sendall('Not found the command:' + self.data) if __name__ == "__main__": HOST, PORT = "127.0.0.1", 3333 server = SocketServer.ThreadingTCPServer((HOST, PORT), MyTCPHandler) server.serve_forever() """import socketimport sysimport threadHOST = ''PORT = 8888s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)a = socket.getdefaulttimeout()print 'Socket created'try: s.bind((HOST,PORT))except socket.error , msg: print(str(msg[0])+' '+str(msg[1])) sys.exit()print 'Socket bind complete's.listen(2)print 'Socket now listening'def clientthread(conn): conn.send('Welcome to the server. Type somthing and hit enter\n') print(a) while True: #try: data = conn.recv(9999) reply = 'OK....' + data #except socket.error , msg: #print(str(msg[0])+' '+str(msg[1])) #sys.exit() if not data: break conn.sendall(reply) conn.close()while 1: conn,addr = s.accept() print 'Connected with ' + addr[0] + ':' + str(addr[1]) thread.start_new_thread(clientthread ,(conn,))s.close()