您的位置:首页 > 编程语言 > Python开发

python socket的代码实例

2015-08-05 11:08 661 查看

server socket

import socket
import time
import threading
import sys

try:
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
except socket.error:
print "creat a socket faill"
sys.exit()
print "creat a socket success"

host="本机ip"
port =8885
try:
s.bind((host,port))
except socket.error:
print "bind faill"
sys.exit()
print "%s bind of 8888 success"%socket.gethostname

s.listen(5)
print "waiting for connecting... "

def tcplink(sock,addr):
print "Accept new connecting from %s:%s" %addr
sock.send("welcom,who are you? ")
while True:
data=sock.recv(4096)
time.sleep(2)
if data =='exit' or not data:
break
sock.send("hello, %s"%data)
sock.close()
print "connection form %s:%s close)"%addr

while 1:
(clientsocket,address)=s.accept()
t=threading.Thread(target=tcplink,args=(clientsocket,address))
t.start()
t.join()
s.close()


client socket

import sys
import socket

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

host='192.168.189.1'

port=8885

try:
remote_ip=socket.gethostbyname(host)
except socket.error:
print "get remote_ip faill"
sys.exit()
print "get remote_ip successfully to %s"%remote_ip

try:

s.connect((remote_ip,port))
except socket.error:
print "connect faill"
sys.exit()
print "connect successfully  to %s"%remote_ip

s.send('hello serve')

reply=s.recv(4096)

print reply
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: