1

所以我编写了一个小型 twitch irc 机器人,但它断开连接,机器人只是保持乒乓球,在 3 次乒乓球后,我的机器人从 twitch 接收到 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 之后完全 twitch 不再 ping 或发送任何东西。

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

4

1 回答 1

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')

这让很多事情变得容易多了。如果问题仍然存在,请尝试并发表评论。

于 2014-09-12T22:25:41.253 回答