IRC ist ein Text-Chat- Programm zum ersten Mal im Jahr 1988 entwickelt. Während Computer-Technologie hat lange IRC vorbei existieren zahlreiche IRC -Server mit Hunderten von Benutzern diskutieren Themen und den Austausch von Informationen . Eine Möglichkeit, dass Benutzer auf IRC zu verbinden ist durch "Bots" , die Text aus einem IRC-Channel zu lesen und Aufgaben auf der Grundlage , was sie liest. Ein Bot kann auf bestimmte Nachrichten mit bestimmten Schlüsselwörtern zu reagieren, oder es kann einfach still sitzen und speichern Sie die Gespräche in einer Datei. Eine Möglichkeit, ein IRC-Bot zu erstellen, ist die Programmiersprache Python , mit seiner " Buchse" Bibliothek für die Internet-Kommunikation . Things You
Python Interpreter
brauchen anzeigen Weitere Anweisungen
1
Importieren Sie die Socket-Bibliothek und Einrichten Anschluss Variablen . Unter der Annahme, dass Sie bereits über bevorzugte IRC Anmeldeinformationen für das bot, wird die Python IRC-Bot verwenden diese Anmeldeinformationen , um sich mit den " Steckdosen " Bibliothek anmelden. Das folgende Beispiel zeigt , wie man das Layout Variablen für die Anmeldeinformationen zu verwenden, einschließlich der Werte für den IRC-Server , Port -Anschluss und Bot Benutzerinformationen :
# /usr /bin /python
< p! > Import Buchse
import string
host = ' example.host.org '
port = 6667
nick = ' pythonbot3000 '
< p> ident = ' PyBot '
realname = 'Bobby'
lesen = ''
2
Use " Buchse" auf dem Server zu verbinden . Angenommen, der Server ist " example.host.org , " mit einem Socket-Objekt , um die Verbindung herzustellen. In diesem Beispiel erstellen Sie die Socket-Objekt , " irc_sock ", und es verwenden, um die Verbindung zum Server und senden Informationen in Log :
irc_sock = socket.socket ()
irc_sock.connect ( Host, Port )
irc_sock.send ( ' NICK ' + nick + '\\ r \\ n')
irc_sock.send ('user' + ident + ' ' + Host + ' bla : '+ + realname ' n ' )
3
an einen Kanal anschließen und Text lesen . Wenn Sie haben , die der Bot join channel wollen " Beispiel ", dann die " find" -Methode einer Zeichenfolge aus dem IRC -Server zusammen, um den Status der Verbindung zu überprüfen . Nehmen Sie an einem Kanal und beginnt mit dem Lesen und Drucken von Nachrichten , wie im folgenden Code dargestellt :
while 1: //Endlosschleife Sammeln Text
read = irc_sock.recv (500) //halten wird Textzeile
Druck zu lesen //druckt es
wenn read.find ( 'Generic Intro Message' ) = -1 : //if Server intro Nachricht , einen Channel
irc_sock.send ( ' JOIN ' + Beispiel + '\\ r \\ n')