服务器端
#!/usr/bin/env python
# encoding: utf-8
import socket
import sys
# import threading
HOST = 'localhost'
PORT = 8888
try:
clientsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
except socket.error, msg:
print " failed to create socket. error code: " + str(msg[0]) + ", error msg: " + msg[1]
sys.exit()
print "socket created "
try:
remoteip = socket.gethostbyname(HOST)
except socket.gaierror:
print " hostname could not be resolved. exiting. "
sys.exit()
print "ip address of " + HOST + "is " + remoteip
clientsock.connect((remoteip, PORT))
print " connected to " + HOST + " on ip " + remoteip
# for f in open("qsort.py"):
# print f,
# message = f
#
# try:
# clientsock.sendall(message)
# except socket.error:
# print " send failed "
# sys.exit()
def readfile(filename):
f = file(filename)
while True:
line = f.readline()
if len(line) == 0:
break
print line,
f.close()
print " sys.argv[1] ==========", sys.argv[1]
message = sys.argv[1]
try:
clientsock.sendall(message)
except socket.error:
print " send failed"
sys.exit()
print " message send successfully "
reply = clientsock.recv(1024 * 4)
print reply
clientsock.close()
客户端
#!/usr/bin/env python
# encoding: utf-8
import socket
import sys
import threading
HOST = ''
PORT = 8888
serversock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print "socket created"
try:
serversock.bind((HOST, PORT))
except socket.error, msg:
print " bind failed . error code: " + str(msg[0]) + " error msg: " + msg[1]
sys.exit()
print " socket binded "
serversock.listen(10)
print "socket now listening "
def client_thread(conn):
conn.send("welcome to the server !, type letters and enter \n")
while True:
data = conn.recv(1024)
reply = "server| " + data
f = open("receive.txt", 'a')
print >> f, data
f.close()
if not data:
break
conn.sendall(reply)
conn.close()
while True:
conn, addr = serversock.accept()
print "connected with " + addr[0] + ": " + str(addr[1])
threading._start_new_thread(client_thread, (conn, ))
serversock.close()