bot

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

ich habe ein problem

Code: Alles auswählen

import socket,string
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("tux.german-freakz.net",6667))
s.send("NICK mingo\r\n" +"PASS mingo\r\n"+"USER mingo is now here\r\n"+"JOIN #c++\r\n")
while True:
	byte=1024
	msg = string.split(s.recv(byte))
	if msg[0] == "PING":
		s.send("PONG %s\n\r" % msg[1][1:])
while True:
elif splitted[3] == ':#info':
                infomsg  = "I'm an IRC-Bot written by Cube " 
                infomsg += "and I'm located at the german-freakz network!" 
                sendit(infomsg)
wo ist da der fehler
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

das frage ich mich auch...kannste den auch hinzufügen?
die fehlermeldung hilft immer ungemein viel ;)
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

keine fehler meldung er bricht einfach ab
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

und wenn du regelmäßig irgendetwas printest?
setze doch mal nach jedem/jedem zweiten befehl ein print ein...
das hilft ungemein beim debuggen!
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

das vertsehe ich jetzt nicht
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

also etwa so:

Code: Alles auswählen

import socket,string
print "alles importiert!"
s=socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("tux.german-freakz.net",6667))
print "ich bin eigeloggt"
s.send("NICK mingo\r\n" +"PASS mingo\r\n"+"USER mingo is now here\r\n"+"JOIN #c++\r\n")
print "ich habe die informationen gesendet"
while True:
    byte=1024
    msg = string.split(s.recv(byte))
    if msg[0] == "PING":
        s.send("PONG %s\n\r" % msg[1][1:])
    elif splitted[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)
aber wo ich mir das so ansehe: wie soll er je in die zweite entlosschleife kommen?
dafür brauchst schon threats. außerdem fängst du an einer stelle sofort mit einem elif an!
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

also verbinden kan ich aber nac h einer seknude is er wieder raus komisch oder
Benutzeravatar
DatenMetzgerX
User
Beiträge: 398
Registriert: Freitag 28. April 2006, 06:28
Wohnort: Zürich Seebach (CH)

Was für eine Funktion ist sendit?
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

die Fehlermeldung spricht doch für sich:wink:
Du hast die variable splitted nich definiert..
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

und wie mach ich das
CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

kanns sein, dass du nur das script kopiert hast - eventuell sogar unvollständig - und gar kein Python kannst? Wenns ncih so sein sollte, sry!
Da ich nich weiß, was in splitted drinnen stehen soll bzw was alles drinnen stehen kann, kann ich dir nich sagen, wie du es definierst.
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

variable = None richtig
CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

snakebyte hat geschrieben:variable = None richtig
Was :?:
snakebyte
User
Beiträge: 28
Registriert: Donnerstag 15. Juni 2006, 13:48

ok ich gebe zu ich kann erst seit heute python och bin bereit mir nen book zu schnapen was ich auch schon getan habe,ich habe mir a byte oh python bestellt.blos ich muss heute einen bot zusammen bekommen der zu server verbindet und den einfachen behfl befolgt man schreibt !wetter er sagt 2 grat oki wie es in dem http://nopaste.php-q.net/223151 auch is blos das mit der varrible defieniren bkomme ich nicht hin bitte hlf mir jemand ist echt wichtig.
mfg

:?:
Benutzeravatar
DatenMetzgerX
User
Beiträge: 398
Registriert: Freitag 28. April 2006, 06:28
Wohnort: Zürich Seebach (CH)

splitted == irgendwas
CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

DatenMetzgerX hat geschrieben:splitted == irgendwas
soll heisen, wir können dir nich sagen, was drin steht.
Eine Variable is ja dafür da, dass alles drinstehen kann. Und so können wirs dir nich sagen
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

1.Sieht man eigentlich, dass es nicht sein Skript ist(Zeile 12)
2.Zeile 11 ist falsch eingerückt
3.Ja die Variable kann alles sein. Vielleicht wäre es hilfreich das ganze Skript zu posten.
mfg

Thomas :-)
CrackPod
User
Beiträge: 205
Registriert: Freitag 30. Juni 2006, 12:56

naja zu 1: man kann viele nicknames haben, wobeis unrealistisch is, weil er ja schon gesagt hat, er hat sich python gestern oder so zum 1. mal angeschaut :D
BlackJack

Mit Variable definieren war nicht gemeint, das Du dafür sorgst, dass es den Namen `splitted` gibt, sondern dass der auch an etwas gebunden ist was in dem Skript einen Sinn ergibt. `None` wird nicht funktionieren weil in dem Zweig auf das vierte Element von `splitted` zugegriffen wird.

Code: Alles auswählen

In [55]: splitted = None

In [56]: splitted[3]
---------------------------------------------------------------------------
exceptions.TypeError          Traceback (most recent call last)

/home/marc/<ipython console>

TypeError: unsubscriptable object
Also nicht brauchbar. Wenn ich mal raten müsste, dann wird `splitted` wohl besser `msg` heissen.

Ansonsten lern mal Python, für diesen kleinen Schnipsel reicht fast das Tutorial aus der Doku, und ein wenig Orthographie. So ein dummer Computer ist da nämlich nicht so nachsichtig wie wir was Tippfehler angeht. ;-)
Antworten