begin process at 2010 03 18 17:58:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Python

 > 

Divers

 > 

Débutant(e)

 > 

bot irc python problème rejoindre channel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

bot irc python problème rejoindre channel

mardi 10 juin 2008 à 13:05:15 | bot irc python problème rejoindre channel

Kuby

Bonjour, voila, après avoir un petit peu fouiller sur le net, j'ai reussi a trouver / modifier ceci :
Mais je n'arrive pas à rejoindre de channel... aidez moi plz

#!/usr/bin/env python

import string
import socket

HOST='irc.quakenet.org'
PORT=6667
NICK='cequejeveux'
IDENT='jenesaispas'
REALNAME='jensaisrien'

global OWNER

CHANNEL='#peuimport' #the bot will connect to this channel first

 

IRC=socket.socket( )

IRC.connect((HOST, PORT))

IRC.send("NICK %s\r\n" % NICK)

IRC.send("USER %s %s bla :%s\r\n" % (IDENT, HOST, REALNAME))

IRC.send('JOIN %s\r\n' %CHANNEL) #Join a channel

global mute

mute = 0

 

def sendPrivateMessage(channel, message):#private message send function

    global mute

    if mute == 0:

        IRC.send("PRIVMSG " + channel + " :" + message + "\r\n")

 

 

def ownercommand(CHANNEL, COMMAND, PARAM1, MESSAGE):#commands that only 'admins' can use

    if PARAM1 == "<NULL>":

        if COMMAND == ":!mute":

            global mute

            mute = 1

        if COMMAND == ":!unmute":

            global mute

            mute = 0

    else:

        if COMMAND == ":!leave":

            IRC.send("PART %s\r\n" % PARAM1)

        if COMMAND == ":!join":

            IRC.send("JOIN %s\r\n" % PARAM1)

        if COMMAND == ":!addadmin":

            global OWNER

            OWNER.append(PARAM1)

            sendPrivateMessage(CHANNEL, "you can now control me %s" % PARAM1)

        if COMMAND == ":!adddata":

            data = open("DATA.DATA", "r")

            data.seek(0)

            while 1:

                line = data.readline()

                if not line:

                    file = open("DATA.DATA", "a")

                    file.write("|<>"+PARAM1 +" |||"+MESSAGE.replace("!adddata "+PARAM1,"").replace("\r\n","")+"|||\n")

                    file.close()

                    break

                line = line[:-1]

                if line.find(PARAM1)!=-1:

                    sendPrivateMessage(CHANNEL,"I already have an entry for that keyword and therefore it must be changed manually")

                    break

            data.close()

           

def allcommand(CHANNEL, COMMAND, PARAM1):#commands that anyone can use

    if PARAM1 == "<NULL>":

        if COMMAND == ":!about":

            sendPrivateMessage(CHANNEL,"about what... Idiot")

    else:

        if COMMAND == ":!about":

            data = open("DATA.DATA", "r")

            data.seek(0)

            while 1:

                line = data.readline()

                if not line:

                    sendPrivateMessage(CHANNEL, "I don't know about that")

                    break

                line = line[:-1]

                if line.find("|<>" + PARAM1)!=-1:

                    sendPrivateMessage(CHANNEL,line.split("|||")[1])

                    break

            data.close()

                                 

 

while 1:

    buffer = IRC.recv(1024)

    msg = string.split(buffer)

    talk = buffer.split(" :")

    sender = buffer.split("!") [ 0 ].replace (":", "" )

    msg.append("<NULL>")

    print sender + " " +msg[2] + " :" + talk[1] #output a message that mostly makes sense

    if msg[0] == "PING": #server pings

        IRC.send("PONG %s\r\n" % msg[1])

    if msg [1] == "JOIN" and sender != NICK:

        sendPrivateMessage(msg[2].replace(":",""), "I agree the earth is flat.")

    if msg [1] == "PRIVMSG":

        if msg[2] == NICK: #private message

            if msg[3].startswith(":!"):

                allcommand(sender, msg[3],msg[4])

                if sender in OWNER:

                    ownercommand(sender, msg[3], msg[4], talk[1])

            else:

                sendPrivateMessage( sender, "Don't talk to me %s" %sender )

        else: # message recieved from a channel

            if talk[1].find("LOL WOT")!=-1:

                sendPrivateMessage(msg[2], "%s you are a retard." %sender)

            elif talk[1].find(" hi ")!=-1:

                sendPrivateMessage(msg[2], "hi")

            if  str.lower(talk[1]).find("a")!=-1:

                sendPrivateMessage(msg[2], "you used the letter 'a' in that message %s" %sender)

            if msg[3].startswith(":!"):

                allcommand(msg[2], msg[3],msg[4])

                if sender in OWNER:

                    ownercommand(msg[2], msg[3], msg[4], talk[1])
samedi 12 juillet 2008 à 03:37:11 | Re : bot irc python problème rejoindre channel

xeolin

Est-ce-que ca a marcher le premier coup, et ce n'est que aprés que ca a arréter de marcher ? On appele ca un ban causer par un anti-bot.


Cette discussion est classée dans : data, msg, irc, channel, if


Répondre à ce message

Sujets en rapport avec ce message

Bot IRC [ par maxpeg0705 ] Bonjour,j'aimerai me lancer dans un projet de petit bot IRC Je suis débutant (mais je me débrouille un peu avec les sockets) : j'arrive a me connecter Socket et Threading [ par dabcorp ] Bonjour , J'ai fait un client/serveur socket , mais je me comprend pas les threads ... Je suis obligé de faire une boucle pour relance le programme à restauration data.fs zope [ par rabikisa ] Comment restaurer data.fs dans zope si le tous les fichier sur un serveur quelconque  n'est plus recuperable alors qu'on a pu recuperer son data.fsmer Comment restaurer data.fs dans l' application zope? [ par rabikisa ] Bonjour, J'ai monté un serveur Zope sous Linux et je dois mettre en place une stratégie de sauvegarde. Zope sauvegarde toutes ses configurations, les Projet de bot irc [ par emilrom ] Bonjour, Je cherche un bon codeur en tcl, C, php, python dans le but de crée un bot irc qui doit, par l'intermédiaire de socket, gérer des serveurs de PYTHON ==> PERL [ par Adoc5 ] Salut à toutes et tous, J'ai un code écrit en PYTHON et j'aimerai le convertir pour PERL car les personnes à qui je dois envoyer ce code n'utilisent svp urgent [ par hasna1980 ] salut je suis entrain de faire une view  qui sert a afficher des modules autorises pour un utilisateur donne ,pr certains ca va afficher 1 module pr d tri de fichier [ par mtanfin ] Bonjour;Alors voilà en fait je voudrais trier des fichiers en fonction de leur date de création. en fait le but est de regarder dans chaque fichier si Bot IRC Python ... problème à l'ouverture de la socket [ par tcyrill2 ] Bonjour ici,   Voilà, on m'a filé les bases d'un bot IRC en python. Je sais qu'il fonctionne car j'ai eu l'occaz de le tester avec la personne qui me aide tkinter [ par coco02 ] Bonjour,Je debute en programmation avec python depuis quelques jours.J'essaie de creer un petit programme simple pour controler l'efficacité d'une cli


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,608 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales