Seite 2 von 2
Verfasst: Montag 3. Juli 2006, 07:29
von snakebyte
oki danke aber ich habe es gestern schon rausbekommen habe die variable splittet mit der variable msg ausgetauscht blos jetzt ahbe ich folgendes problem
Code: Alles auswählen
elif msg[3] == ':#info':#zweites while entfernt...
infomsg = "I'm an IRC-Bot written by Cube "
infomsg += "and I'm located at the german-freakz network!"
sendit(infomsg)
wie defieniere ich sendit(infomsg) wist ihr ds thx schonmal.
greeeetz
snakebyte
Verfasst: Montag 3. Juli 2006, 10:06
von snakebyte
so ich habe ihn verändert würde der so gehen:
Code: Alles auswählen
import socket,string
print "geschaft!"
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("tux.german-freakz.net",6667))
print "drin"
s.send("NICK mingo\r\n" +"PASS mingo\r\n"+"USER mingo is now here\r\n"+"JOIN #c++\r\n")
print "ende"
while True:
byte=1024
msg = string.split(s.recv(byte))
if msg[0] == "PING":
s.send("PONG %s\n\r" % msg[1][1:])
if incoming_text.startswith('!'):
# Befehl erkennen und entsprechend antworten
if incoming_text == "!hallo":
#Mach was mit Befehl
print "Grüß dich"
elif incoming_text == "!ciao":
#Mach was mit Befehl
print "Auf wiedersehen!"
elif incoming_text == "!test":
#Mach was mit Befehl
print "TEST"
else: print "Diesen Befehl kenne ich nicht"
das heist einfache farge antowort system habe nun kein python! aber ich denke das müste klapen
Verfasst: Montag 3. Juli 2006, 11:55
von BlackJack
Nein tut es nicht. Es ist nicht richtig eingerückt und nun hast Du `incoming_text`, das Du benutzt bevor du es an einen Wert bindest. Woher soll der Computer wissen was das ist? Ich kann mir denken was es bedeuten soll, aber für den Rechner ist das einfach nur ein Name ohne Bedeutung. Da könnte auch `hurbelschnulz` stehen. Du musst dem Rechner sagen was das ist bevor er damit etwas machen kann.
Verfasst: Montag 3. Juli 2006, 12:18
von snakebyte
könnte ich für in comming text auch msg benutzen.
Verfasst: Montag 3. Juli 2006, 13:50
von Python 47
Und nach der if Anweisung in zeile 13 muss auch ein Körper in Zeile 14 stehen.

Verfasst: Montag 3. Juli 2006, 14:41
von snakebyte
wie naochmal das habe ich net verstanden
Verfasst: Montag 3. Juli 2006, 14:56
von Leonidas
Wundert mich, dass noch niemand die
Python-IRClib vorgeschlagen hat, die definiert gleich schone event-aktionen die man nur überschreiben muss und seinen eigenen Code reinschreiben kann.
Verfasst: Montag 3. Juli 2006, 15:02
von snakebyte
Du schon wieder

Verfasst: Montag 3. Juli 2006, 16:10
von CrackPod
So, ich jetz auch ma wider
Code: Alles auswählen
import socket,string
print "geschaft!"
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("tux.german-freakz.net",6667))
print "drin"
s.send("NICK mingo\r\n" +"PASS mingo\r\n"+"USER mingo is now here\r\n"+"JOIN #c++\r\n")
print "ende"
while True:
byte=1024
msg = string.split(s.recv(byte))
if msg[0] == "PING":
s.send("PONG %s\n\r" % msg[1][1:])
incomming_text = raw_input('gib die anfrage ein')
if incoming_text.startswith('!'):
# Befehl erkennen und entsprechend antworten
if incoming_text == "!hallo":
#Mach was mit Befehl
print "Grüß dich"
elif incoming_text == "!ciao":
#Mach was mit Befehl
print "Auf wiedersehen!"
elif incoming_text == "!test":
#Mach was mit Befehl
print "TEST"
else:
print "Diesen Befehl kenne ich nicht"
So, jetz is richtig eingerückt, nur weiß ich nich ob das incomming_msg
- an der richtigen Stelle is
- bei Irc bots funktionert
Verfasst: Montag 3. Juli 2006, 17:23
von snakebyte
Verfasst: Montag 3. Juli 2006, 18:05
von Leonidas
CrackPod hat geschrieben:So, jetz is richtig eingerückt
Nein, ist es nicht. Die erste zweile ist 0 Leerzeichen eingerückt, die zweite (und folgende) 1 Leerzeichen, obwohl sie keinen Block darstellen.
Verfasst: Montag 3. Juli 2006, 18:07
von snakebyte
kannst du das mal aufzeigen
Verfasst: Montag 3. Juli 2006, 18:15
von Leonidas
snakebyte hat geschrieben:kannst du das mal aufzeigen
Klar:
CrackPod hat geschrieben:
Wenn ich Zeit finde, bau ich kurz eine Python-IRClib version davon.
Verfasst: Montag 3. Juli 2006, 18:17
von CrackPod
mir is nur das mit den if aufgefallen

das die 1. zeile kein leerzeichen hat, is mir nuch aufgefallen...
Verfasst: Montag 3. Juli 2006, 18:17
von snakebyte