Python IRC僵尸程序在3次ping后断开连接

时间:2014-09-12 22:19:37

标签: python python-2.7 irc twitch

所以我编写了一个小抽搐的irc机器人,但它已经断开连接,机器人只是停留在pinging ping并且经过3次拨片后我的机器人从抽搐中收到0个数据并从查看器列表中消失。

这是代码(重要部分):

readbuffer = ""
while (1):
        readbuffer=readbuffer+s.recv(4000)
        temp=string.split(readbuffer, "\n")
        readbuffer=temp.pop( )
        for line in temp:
            print line
            elif(line[0]=="PING"):
                s.sendall("PONG %s\r\n" % line[1])

它是一个用不同参数部署为线程2次的函数。

事情是我在twitch.tv查看器列表中首先看到2个机器人大约5分钟然后在3个ping之后完全抽搐不再ping或发送任何东西。

如果您想了解更多信息,请向我索取更多代码。

1 个答案:

答案 0 :(得分:0)

也许无关:

将套接字解释为文件:https://docs.python.org/2/library/socket.html#socket.socket.makefile

f = s.makefile()
for line in f:
    print 'Read:', line
    command, arguments = line.rstrip().split(' ', 2)
    if command == 'PING':
         f.write('PONG ' + arguments + '\r\n')

这使得这么多事情变得如此简单。如果问题仍然存在,请尝试并发表评论。