我是python套接字编程的初学者。我的问题是,我有一个处于侦听模式的TCP服务器,那时客户端会将数据发送到服务器。但是当我的TCP服务器不可用时,我希望客户端每次都检查连接(类似于使用while循环尝试异常方法)。
我已经尝试了一些技巧,但是没有成功,当我的TCP服务器不可用时,它会让o / p像连接被拒绝。以下是我的代码帮助我。
# client.py
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = socket.gethostname()
port = 2195
s.connect((host, 2195))
while 1:
try:
print "Try loop"
s.sendall("Welcome to Python\r\n")
print "Try loop2"
time.sleep(5)
except:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
s.close()
答案 0 :(得分:0)
我尝试了很多解决方案,但是下面的代码对我有用。
import socket
import time
while True:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR,1)
host = socket.gethostname()
port = 2195
try:
s.connect((host , port))
s.sendall("Welcome to Python\r\n")
except:
print "Error"
time.sleep(5)
s.close()