• STATISTIQUES
  • Il y a eu un total de 3 membres et 5569 visiteurs sur le site dans les dernières 24h pour un total de 5 572 personnes!


    1 membre s'est inscrit dans les dernières 24h!


    Membres: 2 451
    Discussions: 3 574
    Messages: 32 824
    Tutoriels: 77
    Téléchargements: 38
    Sites dans l'annuaire: 58


  • ANNUAIRE
  • [EN] Astalavista
    Un site aux ressources incontournable depuis plusieurs années, Astalavista est réellement devenue un cl...
    Hacking
    [FR] Hackfest
    Le Hackfest est un évènement de sécurité et de piratage informatique au Québec reg...
    Hacking
    [FR] Forum-Webmaster
    Une communauté webmaster pour apporter / recevoir de l'aide en création de site internet. Webmaster...
    Webmaster
    [EN] xda-developers
    Très bon site pour les gros bidouilleurs de smartphone de windows à androïd et de Apple jusqu'...
    Phreaking
    [FR] PHP France
    Pour tout savoir sur le PHP, en français. Vous trouverez des tutoriels, des exemples, des astuces, toute la do...
    Hacking
    [EN] Hack This Site
    Hack This Site est considéré comme un réel terrain d'entraînement légal pour le...
    Hacking
    [FR] apprendre-a-manipuler
    Site d'apprentissage de la manipulation d'autrui.
    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 11,134 10-11-2016, 00h03
Dernier message: ZeR0-@bSoLu
  [python] ANBU ::: TCP Session Hunter St0rn 2 2,418 25-02-2016, 18h45
Dernier message: otherflow
  [Python] Une autre façon de gérer les Virtualenv et Packages thxer 2 2,243 18-01-2016, 12h06
Dernier message: thxer
  [Python] rot script ark 9 5,420 08-03-2015, 00h37
Dernier message: ark
  [Python] Todo Manager ark 5 3,399 03-03-2015, 10h55
Dernier message: ark
  [python] Un décorateur pour inventorier les objets b0fh 1 2,254 04-12-2014, 17h50
Dernier message: thxer
  [python] UPnP Scanner St0rn 2 2,273 29-10-2014, 14h50
Dernier message: St0rn
  [python] Buffer Overflow : EBP et EIP St0rn 0 1,563 25-10-2014, 12h58
Dernier message: St0rn
  [Python] QuickHex thxer 9 5,043 15-08-2014, 20h26
Dernier message: sakiir
  Python : QuickBIn octarin 1 1,890 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