Python中的IRC客户机;不是IRC B

2024-06-26 17:47:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我对此进行了广泛的搜索,只找到了特定于机器人的客户端。我知道它们基本上是一样的,但对于我想做的事情,我就是想不通。在

我正在尝试编程一个python客户机,这是纯粹和简单的表面。例如,当从命令行运行时,它将立即隐形连接,然后在建立连接后打印“say:”。(用户名、服务器等已设置)它将等待用户按-return/enter-然后发送消息,然后检索它一直记录到数组的消息,并打印最后8行/数组值。在

所以用户只能看到频道上的消息,并且能够发送消息。我的问题是想办法除去所有的信息。我很抱歉,如果我看起来想有人帮我做这件事。我看了又看,但还是想不出来。我必须使用IRC模块吗?我很确定我会以某种方式使用regex,但我被难住了。谢谢大家读了我的愚蠢问题!在

import sys
import socket
import string

HOST="irc.freenode.net"
PORT=6667
NICK="MauBot"
IDENT="maubot"
REALNAME="MauritsBot"
readbuffer=""

s=socket.socket( )
s.connect((HOST, PORT))
s.send("NICK %s\r\n" % NICK)
s.send("USER %s %s bla :%s\r\n" % (IDENT, HOST, REALNAME))

while 1:
    readbuffer=readbuffer+s.recv(1024)
    temp=string.split(readbuffer, "\n")
    readbuffer=temp.pop( )

    for line in temp:
        line=string.rstrip(line)
        line=string.split(line)

        if(line[0]=="PING"):
            s.send("PONG %s\r\n" % line[1])

Tags: 用户importsendhost消息stringportline
1条回答
网友
1楼 · 发布于 2024-06-26 17:47:44

您可以使用Telnet连接到IRC服务器。
Python中有一些库可以实现这一点。在

有关详细信息,请参见以下链接:

> Python Telnet connection

> Using Telnet in Python

> Python Doco: 20.14. telnetlib — Telnet client

连接到IRC服务器后,您可以:

  1. 输出在telnet会话中需要的任何命令(例如登录凭据)。在
  2. 加入一个频道。在
  3. 写出你需要的句子。在

相关问题 更多 >