用python套接字连接到IRC服务器
问题描述:
好吧,下面的代码允许我很好地连接到一些IRC服务器。但是我似乎无法连接到其他人,可能是因为授权,不确定。具体来说,其中一台服务器是irc.d2jsp.org用python套接字连接到IRC服务器
所以我的问题是,我该如何连接到这台服务器,为什么当我连接到它时,我的控制台没有说什么?
import socket
import sys
server = "irc.d2jsp.org"
channel = "#channel"
botnick = "pybot"
port = 6667
irc = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print "connecting to: " + server
irc.connect((server, port))
print "connected"
irc.send("USER " + botnick + " " + botnick + " " + botnick + " : Sup!\n")
print "sent user"
irc.send("NICK " + botnick + "\n")
print "sent nick"
while 1:
text = irc.recv(2040)
print text
if text.find("PING") != -1:
irc.send("PONG " + text.split() [1] + "\r\n")
答
这不是因为你的代码。监听irc.d2jsp.org:6667的服务器接受连接,但不发送任何内容。
我可以从中得到的唯一反应是它在发送QUIT
命令后关闭连接。
PS:这是完全无关的问题,但在这条线:
irc.send("USER " + botnick + " " + botnick + " " + botnick + " : Sup!\n")
可能要冒号后删除空间
。 IRC协议并不期望冒号和最后一个参数之间有空格,所以空格将成为真实名称的一部分(即它将是<space>Sup!
)
任何错误消息或者只是没有任何错误 – MatejMecka
没有错误工作,没有:( 当我从连接点连接到其他服务器时,我收到消息,他们打印在控制台,这不是连接到d2jsp irc时,我试图使用SSL但我似乎没有把它挂起来,当我尝试ssl.wrap_socket – LAZ