Miky4e’s Weblog

IRC BOT in Python

Posted by: miky4e on: Ottobre 5, 2008

Ecco a voi, un semplicissimo articolo nel quale vi spiegherò come sviluppare un semplicissimo BOT IRC in Python.

Ma cosa è un BOT IRC?

La comunicazione IRC, come qualsiasi altra comunicazione in Internet, si basa semplicemente su uno scambio di byte. Per questo è possibile creare un programma che si colleghi come un normale utente ad un server IRC e possa ricevere o inviare messaggi.

Bisogna però specificare una cosa: quando noi ci connettiamo a IRC, in verità facciamo fare il grosso del lavoro al client IRC, che converte i messaggi che gli inviamo in forma semplificata in messaggi leggibili dal server, seguendo il protocollo IRC. Il bot però non può appoggiarsi ad un client, e quindi dovrà essere programmato per inviare messaggi leggibili dal server (più avanti è spiegato meglio come).

In questo modulo verrà spiegato come creare un proprio bot che si connette a IRC e riceve/invia messaggi dal/al server.

Il sorgente in questione è disponibile qui.

Ecco a voi invece il sorgente completo da poter consultare; il linguaggio utilizzato è Python.

#!/usr/bin/python

import socket  

def botirc(): 

     print”>>> Configurazione Bot >>>”

     print”"

     nome = raw_input (“Nome bot >>> “)

     server = raw_input (“Server >>> “) 

     canale = raw_input (“Canale >>> “) 

     porta = 6667  

     sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)   

     sock.connect((server, porta)) 

     sock.send (“NICK %s\r\n” % (nome))  

     sock.send(“USER 666 %s bla :%s\r\n” % (server,nome))  

     sock.send (“JOIN %s\r\n” % (canale))     

     while 1:  

             ricev = sock.recv(1024)

             print ricev 

             if ricev.startswith (‘PING :’): 

                sock.send(‘PONG :’ + ricev.split(‘ ‘)[1] + ‘\r\n’)

botirc()

Non ci resta che creare un file bot_irc.py e copiarci dentro il sorgente.

Una volta aperto il terminale digitiamo:

python

Si aprirà l’interprete Python e digiteremo:

import bot_irc.py 

Ed ecco che magicamente il nostro programma funzionerà da subito!

NOTA: per gli utenti Windows Python non è installato di default.

Dovete quindi procedere al download del pacchetto (interprete + IDE) da qui.

LICENZA: contenuto rilasciato sotto licenza Creative Commons; articolo prelevato da un altro blog ;)

4 Risposte a "IRC BOT in Python"

non male, il python i ha sempre affascinata, un giorno o l’altro comincerò anche io e questo può essere un ottimo spunto :)

Beh è un ottimo linguaggio di programmazione, veloce, immediato e ad oggetti.

Ti permette di sviluppare ad oggetti o attraverso la programmazione strutturata.

Ottimo per il Web, discreto per le applicazioni!
Saluti

Ciao :)
Scusami ma ho notato che il sorgente del bot in python risulta identico al mio sviluppato un po’ di giorni fa che ho pubblicato nel mio blog.
Ti prego di inserire le fonti nell’articolo perchè il mio blog e il suo contenuto è coperto da una licenza
Creative commons 2.5

http://creativecommons.org/licenses/by-nc-nd/2.5/it/

Grazie! :)

Hai ragione, in effetti l ho prelevato da li!

Ti chiedo scusa, non ricordavo il link del tuo blog.

Ora lo segno nel topic!

Lascia un commento

Welcome!

Benvenuti sul mio Weblog! Da bravo studente e appassionato di informatica cercherò, nel tempo libero, di pubblicare qualche interessante articolo riguardante il mondo informatico e la programmazione in generale.

Archivi

Statistiche

  • 516 visite