Python IRC Bot在240秒后定时

Max*_*355 1 python sockets irc bots

我正在尝试制作一个IRC机器人,但它会在240秒后保持超时.我怎样才能解决这个问题?

import socket 
host = 'test'
port = 6667
channel = '#test'
nick = "test"
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host, port))
s.send('NICK ' + str(nick) +  ' \n\r') 
s.send('USER v v v :v Script' + '\r\n')
s.send('JOIN '+channel+' \n\r')

while True:
    command = s.recv(4096)
    print command
Run Code Online (Sandbox Code Playgroud)

Mad*_*iha 5

您没有回复来自服务器的ping请求.

当您闲置很长时间时,服务器认为连接已经死亡,并发送ping请求,您需要使用pong(以及ping之后服务器发送给您的任何内容)进行回复.因此,如果服务器发送给您,那应该是您的回复:

PING :HELLO_WORLD
PONG :HELLO_WORLD
Run Code Online (Sandbox Code Playgroud)

没有它,服务器将确认链接已死并终止连接.