• STATISTIQUES
  • Il y a eu un total de 0 membres et 30410 visiteurs sur le site dans les dernières 24h pour un total de 30 410 personnes!
    Membres: 2 605
    Discussions: 3 579
    Messages: 32 816
    Tutoriels: 78
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [FR] dcode
    dcode.fr est le site indispensable pour décoder des messages, tricher aux jeux de lettres, résoudre des énigmes...
    Outils / Add-on
    [EN] Astalavista
    JavaScript: 1, Exploit: 2, Crypto: 34, CrackIt: 15, Stegano: 8, Programming: 12, Logic: 36, Special: 6, Science: 4, Info...
    Challenges
    [FR] Secuser
    Actualité de la sécurité informatique, fiches virus et hoax, alertes par email, antivirus gratui...
    Hacking
    [FR] WeChall
    Audio: 3, Coding: 11, Cracking: 9, Crypto: 18, Encoding: 11, Exploit: 44, Forensics: 1, Fun: 6, HTTP: 6, Image: 8, Java:...
    Challenges
    [EN] wechall
    Pour les gens n'étant pas familiers avec les sites de challenges, un site de challenges est un site propos...
    Hacking
    [FR] Newbie Contest
    Crackme: 35, Cryptographie: 49, Hacking: 27, Javascript/Java: 17, Logique: 31, Programmation: 23, Stéganographie: 53
    Challenges
    [FR] Cyber-Hacker
    CH - Cyber Hacker est un jeu par navigateur de simulation de hack, programmez et envoyez vos virus et piratez les aut...
    Hacking

  • DONATION
  • Si vous avez trouvé ce site internet utile, nous vous invitons à nous faire un don du montant de votre choix via Paypal. Ce don servira à financer notre hébergement.

    MERCI!




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[PYTHON] un bot IRC basique
12-06-2016, 22h26 (Modification du message : 12-06-2016, 22h27 par darcosion.)
Message : #1
darcosion Hors ligne
Newbie
*



Messages : 21
Sujets : 3
Points: 14
Inscription : Oct 2013
[PYTHON] un bot IRC basique
Coucou

j'ai codé récemment un petit bot python juste pour voir comment fonctionne le protocole (plutôt sympa et simple d'ailleurs) et je me suis dis que ça pourrais vous plaire, alors je le partage ici, si le coeur vous en dis de le pimper pour en faire un bot pour votre IRC Wink

Code :
#!/usr/bin/env python3

import sys
import socket
import socks
import string
import bs4
from urllib import request as req
import BeautifulSoup as bs4
import re

HOST = "tonirc.gouv.fr"
PORT = 6667

NICK = "tonbot"
IDENT = "youhou"
REALNAME = "tonbotonbot"
MASTER = "darcosion"

readbuffer = ""

s=socket.socket( )
s.connect((HOST, PORT))

s.send(bytes("NICK %s\r\n" % NICK, "UTF-8"))
s.send(bytes("USER %s %s bla :%s\r\n" % (IDENT, HOST, REALNAME), "UTF-8"))

def irc_join(chan):
    s.send(bytes("JOIN #"+chan+"\r\n", "UTF-8"));

def irc_quit(chan):
    s.send(bytes("PART #"+chan+"\r\n", "UTF-8"));

irc_join("tonchan")
s.send(bytes("PRIVMSG %s :Bonjour Master\r\n" % MASTER, "UTF-8"))
while 1:
    readbuffer = readbuffer+s.recv(1024).decode("UTF-8")
    temp = str.split(readbuffer, "\n")
    readbuffer=temp.pop( )

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

        if(line[0] == "PING"):
            s.send(bytes("PONG %s\r\n" % line[1], "UTF-8"))
        if(line[1] == "PRIVMSG"):
            sender = ""
            if(line[2][0] == '#'):
                sender = line[2]
            else:
                for char in line[0]:
                    if(char == "!"):
                        break
                    if(char != ":"):
                        sender += char
            size = len(line)
            i = 3
            message = ""
            while(i < size):
                message += line[i] + " "
                i = i + 1
            message = message.lstrip(":")
            #ajouter ici le code de lecture des messages
            youtubeVideo = message[message.find("https://www.youtube.com/watch?v="):message.find("https://www.youtube.com/watch?v=")+44]
            
            if(youtubeVideo[:4] == "http"):
                try:
                    result = lien.open(youtubeVideo)
                except:
                    break
                soup = bs4.BeautifulSoup(result, "lxml")
                titre = soup.findAll(class_ = "watch-title" )
                renvoie = ""
                for e in titre:
                    renvoie += e['title']
                #récupère le contenu et envoie les données
                s.send(bytes("PRIVMSG %s :%s \r\n" % (sender, renvoie), "UTF-8"))
                break
                
        for index, i in enumerate(line):
            print(line[index])

edit : pour le moment, sa seule fonctionnalité est de récupérer des liens youtube et d'en indiquer le titre de vidéo. Wink
+1 (3) -1 (0) Répondre
13-06-2016, 20h40
Message : #2
Yttrium Hors ligne
Membre actif
*



Messages : 106
Sujets : 14
Points: 48
Inscription : Jul 2012
RE: [PYTHON] un bot IRC basique
Cool, merci beaucoup, maintenant on te laisse 2 jours pour implémenter tout le protocole décrit dans la RFC1459 :p

Nan plus sérieusement, c'est vraiment intéressant Wink
BufferoverfloW

Всё минется, одна правда останется
+1 (0) -1 (0) Répondre


Sujets apparemment similaires…
Sujet Auteur Réponses Affichages Dernier message
  [Python]Situer mon niveau. InforMods 19 1,045 10-11-2016, 00h03
Dernier message: ZeR0-@bSoLu
  [python] ANBU ::: TCP Session Hunter St0rn 2 241 25-02-2016, 18h45
Dernier message: otherflow
  [Python] Une autre façon de gérer les Virtualenv et Packages thxer 2 137 18-01-2016, 12h06
Dernier message: thxer
  [Python] rot script ark 9 480 08-03-2015, 00h37
Dernier message: ark
  [Python] Todo Manager ark 5 371 03-03-2015, 10h55
Dernier message: ark
  [python] Un décorateur pour inventorier les objets b0fh 1 169 04-12-2014, 17h50
Dernier message: thxer
  [python] UPnP Scanner St0rn 2 197 29-10-2014, 14h50
Dernier message: St0rn
  [python] Buffer Overflow : EBP et EIP St0rn 0 132 25-10-2014, 12h58
Dernier message: St0rn
  [Python] QuickHex thxer 9 461 15-08-2014, 20h26
Dernier message: sakiir
  Python : QuickBIn octarin 1 148 13-08-2014, 19h05
Dernier message: thxer

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
N-PN
Accueil | Challenges | Tutoriels | Téléchargements | Forum | Retourner en haut