【发布时间】:2012-07-22 13:05:48
【问题描述】:
我正在尝试在 python 中制作一个非常简单的 irc 机器人,但不知道如何使用套接字来做到这一点。 我唯一想要的是:连接到 irc 服务器,设置昵称(和名称),加入频道,并向 irc 频道写一条消息。
谁能带领我走向正确的方向或代码的小例子?
import socket
name = raw_input("Enter your name: ")
nick = raw_input("IRC Handle: ")
irc_serv = "irc.freenode.net"
port = 6667
conn = socket.socket()
conn.connect((irc_serv, port))
conn.send("NICK "), nick
conn.send("NAME "), nick
conn.send("JOIN #king")
conn.send("PRIVMSG #king test message")
我运行它,输入姓名和昵称,但它没有加入频道(检查连接到频道的xchat)
【问题讨论】:
-
@J.Steen 我试过了,给我一秒钟,我会粘贴我目前所拥有的。
-
具体问题。就像,为什么这个套接字没有连接,或者为什么我的编码返回不稳定的字符。 =)
-
您实际上没有发送
nick?conn.send('NICK {}').format(nick)可能是您想要的。我的 RFC1459 已经生锈了(我不得不写一个机器人已经 15 年了) -
@JonClements 你的意思可能是
conn.send('NICK {}'.format(nick))。但是,这是我会检查nick的内容以防止恶意输入的地方。 -
IRC Python Bot: Best Way 的可能重复项