Seite 1 von 1

brauche dringend telnetlib hilfe

Verfasst: Samstag 24. Januar 2009, 17:26
von gugugs
Wie kann ich, wenn ich einen Befehl ans Telnet gesendet habe, solange auslesen, bis nichts mehr kommt?

also normalerweise kann man ja so die verbindung aufbauen:

Code: Alles auswählen

from telnetlib import Telnet

con=Telnet("192.168.1.21")
und die meisten benutzen dann den befehl Telnet.read_until("meinerueckgabe", timeout)

aber dieser befehl ist ja dafür, das er so lange aus liest bis er auf meinerueckgabe kommt oder eben bis der timeout vorbei ist

aber wie kann ich die ausgabe so lange auslesen, bis keine mehr da ist?

Habe hier http://docs.python.org/library/telnetli ... read_until leider nichts gefunden, das mir helfen könnte.

Bitte um Hilfe

Verfasst: Samstag 24. Januar 2009, 17:38
von DasIch
timeout ist optional, wenn du also keines übergibst funktioniert dass ganze vermutlich blockend und du hast das gewünschte Ergebnis.

Verfasst: Samstag 24. Januar 2009, 17:41
von gugugs
Nein, dann geht leider überhaupt nichts mehr, denn er sucht ja so lange bis das kommt, und wenn es nicht kommt, macht er es trotzdem

Verfasst: Samstag 24. Januar 2009, 17:46
von Leonidas
Du kannst ja prinzipbedingt nicht wissen, ob bei einem Socket noch etwas kommt oder nicht.

Verfasst: Samstag 24. Januar 2009, 17:47
von DasIch
Was soll auch sonst passieren?

Verfasst: Samstag 24. Januar 2009, 17:52
von gugugs
Das heißt es ist unmöglich alles auszulesen, wenn ich nicht weiß, was die letzte Ausgabe ist?

Verfasst: Samstag 24. Januar 2009, 17:53
von Leonidas
gugugs hat geschrieben:Das heißt es ist unmöglich alles auszulesen, wenn ich nicht weiß, was die letzte Ausgabe ist?
Ja, oder wenn du nicht weißt wie viele Bytes noch kommen. HTTP nutzt etwa Content-Length um dem Client zu sagen, wieviel Bytes da noch kommen werden.

Verfasst: Samstag 24. Januar 2009, 17:55
von gugugs
Das versteh ich nicht ganz
Kann mir vllt jemand ein wenig auf die Sprünge helfen, das zu realisieren, auch wenn es ein bisschen anders ist?
Wie ist das mit Content-Length?

Verfasst: Samstag 24. Januar 2009, 18:05
von Leonidas
gugugs hat geschrieben:Kann mir vllt jemand ein wenig auf die Sprünge helfen, das zu realisieren, auch wenn es ein bisschen anders ist?
Wie ist das mit Content-Length?
Der HTTP-Server schickt einen Header, Content-Length bei einem HTTP-Request mit, der Besagt, wie viele Bytes noch folgen werden.

Sowas gibt es bei Telnet schlichtweg nicht.