Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python IRC bot,读取从IRC服务器的命令返回的数据_Python_Bots_Irc_Names - Fatal编程技术网

Python IRC bot,读取从IRC服务器的命令返回的数据

Python IRC bot,读取从IRC服务器的命令返回的数据,python,bots,irc,names,Python,Bots,Irc,Names,我有一个类似的问题 我正在使用一个用Python编写的IRC机器人,这种机器人在网络上随处可见 我必须向IRC服务器发送一个“NAMES”命令,然后IRC服务器返回当前在bot所在通道中的用户名列表。但我似乎无法捕捉到该列表,也无法从服务器获取消息-机器人接收并打印其他用户发送的消息,但不是他自己或命令输出 要打印数据,我使用以下方法: while True: data = irc.recv ( 4096 ) (...) print data irc.send ( 'N

我有一个类似的问题

我正在使用一个用Python编写的IRC机器人,这种机器人在网络上随处可见

我必须向IRC服务器发送一个“NAMES”命令,然后IRC服务器返回当前在bot所在通道中的用户名列表。但我似乎无法捕捉到该列表,也无法从服务器获取消息-机器人接收并打印其他用户发送的消息,但不是他自己或命令输出

要打印数据,我使用以下方法:

while True:
    data = irc.recv ( 4096 )
    (...)
    print data
irc.send ( 'NAMES #channel\r\n' )
要发送NAMES命令,我尝试了以下操作:

while True:
    data = irc.recv ( 4096 )
    (...)
    print data
irc.send ( 'NAMES #channel\r\n' )
以及:


pastebin.com的完整代码:

我刚刚能够在脚本输出中看到名称列表

:botty!~botty@durrrrrrrrr JOIN :#channel
:retribution.sg.as.irchighway.net 353 botty = #channel :botty IlPalazzo-ojiisan @Nibelung 
:retribution.sg.as.irchighway.net 366 botty #channel :End of /NAMES list.
:retribution.sg.as.irchighway.net 353 botty = #channel :botty IlPalazzo-ojiisan @Nibelung 
:retribution.sg.as.irchighway.net 366 botty #channel :End of /NAMES list.

不过,这并不是最后一件突然出现的事情。也许你错过了?上面是最后一行返回的一组全局通知。

我建议您使用高级IRC库,这使您的任务更容易:)很容易错过。我原以为它会从底部弹出,只是在远程登录时才发现它。还值得注意的是,名字列表有两次,这是因为当你加入一个频道时,你会自动收到它。