一个喜剧简单的python程序上的IRC连接错误

一个喜剧简单的python程序上的IRC连接错误,第1张

概述我今天开始尝试制作一个涉及IRC日志的相对复杂的程序.无论我做了什么,我都得到了: ['ERROR', ':Closting', 'Link:', *******identifying details**********,'(Connection', 'timed', 'out')' 我认为简化一切都可以帮助我从中学习,但即使有这个非常简单的程序,我仍然会收到这个错误: import sysim 我今天开始尝试制作一个涉及IRC日志的相对复杂的程序.无论我做了什么,我都得到了:

['ERROR',':Closting','link:',*******IDentifying details**********,'(Connection','timed','out')'

我认为简化一切都可以帮助我从中学习,但即使有这个非常简单的程序,我仍然会收到这个错误:

import sysimport socketimport stringHOST="irc.freenode.net"PORT=6667NICK="nick"IDENT="nick"REALname="realname"readbuffer=""s=socket.socket( )s.connect((HOST,PORT))s.send("".join(["NICK",NICK,"\r\n"]).encode())s.send("".join(["USER %s %s bla :%s\r\n" % (IDENT,HOST,REALname)]).encode())while 1:    readbuffer=readbuffer+s.recv(1024).decode()    temp=str.split(readbuffer,"\n")    readbuffer=temp.pop( )    for line in temp:        line=str.rstrip(line)        line=str.split(line)        if(line[0]=="Ping"):            s.send("".join(["PONG ",line[1],"\r\n"]).encode())        print (line)

我现在非常确定我正在解决人们在这里发布的虚拟代码(几乎在其他地方.我做错了什么?

解决方法 仔细看看这行代码:

s.send("".join(["NICK","\r\n"]).encode())

如果你用print替换s.send,你会发现它发送的字符串是这样的:

NICKnick<CR><LF>

没有空间!这使得它成为无效命令,并使注册失败.在某些时候,服务器放弃接收您的有效注册,因此向您发送错误并关闭连接.所以请确保包含空格:

s.send("".join(["NICK ","\r\n"]).encode())

至少你会发送有效的注册.

总结

以上是内存溢出为你收集整理的一个喜剧简单的python程序上的IRC连接错误全部内容,希望文章能够帮你解决一个喜剧简单的python程序上的IRC连接错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1197128.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存