muirc este un modul minimalist și eficient Python pentru a crea și analiza mesajelor IRC. & Nbsp; Ea are loc de muncă, și numai de locuri de muncă, într-un mod pythonic.
analizare si crea mesaje IRC
Numele modulului este muirc.
muirc import
Funcția principală este transformarea, care poate fie analiza un mesaj IRC crud și returnează un dicționar, acesta tastele sunt domeniile mesajului ...
>>> Muirc.translate ("PRIVMSG #irc: Hello, World: -!) R n")
{"Nick": Nici unul, "gazdă": Nici unul, "comanda": "PRIVMSG", "utilizator": Nici unul, "params": ["#irc", "Hello, World! :-) "]}
... Sau analiza un dicționar cu câmpuri mesaj IRC și returnează un mesaj IRC brut.
>>> Muirc.translate ({'nick': Nici unul, "gazdă": Nici unul, "comanda": "PRIVMSG", "utilizator": Nici unul, "params": ["#irc", "Hello, World!: -) ']})
"#irc PRIVMSG: Buna ziua, lume! : -) R n '
Aplicarea transforma de două ori returnează același obiect
>>> Muirc.translate (muirc.translate ("#irc PRIVMSG: Hello, World: -!) R n"))
"#irc PRIVMSG: Buna ziua, lume! : -) R n '
>>> Muirc.translate (muirc.translate ({'nick': Nici unul, "gazdă": Nici unul, "comanda": "PRIVMSG", "utilizator": Nici unul, "params": ["#irc", "Hello World:-) "]}))
{"Nick": Nici unul, "gazdă": Nici unul, "comanda": "PRIVMSG", "utilizator": Nici unul, "params": ["#irc", "Hello, World! :-) "]}
Unii exemplu mai mult în avans
>>> Muirc.translate (":! Nick utilizator @ PRIVMSG gazdă #irc: Hello, World!-)")
{"Nick": "nick", "gazdă": "gazdă", "comanda": "PRIVMSG", "utilizator": "utilizator", "params": ["#irc", "Hello, World! :-) "]}
>>> Muirc.translate (muirc.translate (":! Nick utilizator @ PRIVMSG gazdă #irc: Hello, World!-)"))
": Utilizator @ gazdă PRIVMSG #irc nick: Buna ziua, lume! : -) R n '
Conectați-vă la serverul IRC
O clasă de conectare este prevăzută pentru a interacționa cu un nod IRC. Acesta poate fi folosit fie pentru a construi un client IRC sau server.
Crearea unei conexiuni da un 2-tuplu (host, port).
>>> Conn = muirc.Connection (("irc.freenode.net", 6667))
Metodele Proxy sunt furnizate pentru a trimite cu ușurință mesaje IRC. Cazul nu este important.
>>> Conn.nick ("muirc")
>>> Conn.UsEr ("o", "o", "o", "a")
Această clasă oferă o interfață iterator care produce un obiect parsată de fiecare dată un mesaj IRC este primit. Această opțiune oferă o modalitate ușoară și pythonic de a crea un mod simplu IRC.
Următorul exemplu se conectează la FreeNode, se alăture #muirc și trimite un mesaj lume salut.
>>> Stat = "wait_motd"
>>> Pentru mesaj în conn:
... Dacă starea == "wait_motd":
... # 376 => MOTD capete
... Dacă mesajul ["comanda"] == "376":
... De stat = "end_motd"
...
... # Alăturați-vă #muirc
... Dacă starea == "end_motd":
... Conn.join ("# muirc")
... De stat = "wait_join"
...
... # Așteptați alătura ACK
... Dacă starea == "wait_join":
... Dacă mesajul ["comanda"] == "JOIN":
... De stat = "hello_world"
...
... # Trimite "Hello, World!-)" Pentru canalul #muirc
... Dacă starea == "hello_world":
... Conn.privmsg ("# muirc", "Hello, World!-)")
... De stat = "ieși"
...
... # Quit
... Dacă starea == "ieși":
... Conn.quit ("Pa, World:!-(")
... Print "OK"
... Pauză
OK
Cerințe :
- Python
Comentariile nu a fost găsit