我正在開發一個IRC-bot作爲一個小型的Python項目。機器人工作得很好,但無法長時間保持連接。過了一段時間,它只是打印終端的emptylines,然後ping出來(因爲它不能處理來自服務器的PING)。套接字接收`nothing`:無限循環
這段代碼處理接收部分:
def listen(channel):
while True:
data = conn.recv(4096)
print data
if data != '':
if data.split()[0] == 'PING':
process the data
一段時間後,機器人只是打印whitelines到終端,我不知道爲什麼。
完整的代碼可在這裏在Github:https://github.com/Silox/Python-IRC-bot/blob/master/bot.py#L101
謝謝 - 我已經對代碼進行了編輯,檢查傳入數據的長度,並且 - 如果爲零 - 重新連接。 – Silox
@Silox,將ack發送回服務器以便不會斷開連接? –