Seite 1 von 1

micq über python

Verfasst: Sonntag 12. Juni 2005, 11:17
von Hangman
hoi,
ich benutze seit einiger zeit micq (konsolenbasiertes icq-programm)
jetzt habe ich gelesen, dass man mit python befehle an die konsole übergeben kann. jetzt versuche ich, mal per python das programm laufen zu lassen. hier im forum habe ich per suchfunktion folgenden code gefunden, um programme auszuführen:

Code: Alles auswählen

import os

_stdin, _stdout, _stderr  = os.popen3("micq")
_stdin.flush()
for _s in _stdout.readlines():
    print '%s'%_s.strip()
_stderr.close()
_stdout.close()
_stdin.close() 
so wie er da steht, sollte micq schon gestartet werden.
wenn ich an stelle von micq ein anderes programm einsetze, funktioniert das auch sehr gut. es wird sowohl das programm selber (in dem fall ein fenster) geöffnet, als auch die entsprechende ausgabe in der konsole ausgegeben.
wenn ich das aber mit micq probiere, wo es ja nur die ausgabe in der konsole geben sollte, fehlt eben diese...

hat jemand eine idee, wo dran das liegen kann?
danke im vorraus für eure hilfe :)

Re: micq über python

Verfasst: Sonntag 12. Juni 2005, 12:41
von Leonidas
Hangman hat geschrieben:hat jemand eine idee, wo dran das liegen kann?
Eine Idee nicht direkt, aber du solltest die ganzen _ rausnemhen, diese machen den Code schwer lesbar. Zudem könntest du das modernere Modul subprocess nutzen..

Verfasst: Sonntag 12. Juni 2005, 13:53
von Hangman
k werd ich mir mal angucken thx :)

edit: hab mit dem subprocess modul das problem, dass ich das nicht importiert kriege. muss ich das irgendwie erst runterladen oder so? "import subprocess" funzt net :(

Verfasst: Sonntag 12. Juni 2005, 15:14
von Leonidas
Hangman hat geschrieben:"import subprocess" funzt net :(
Das ist ab Python 2.4 dabei.

Aber das gibt es hier auch für Python 2.2 und 2.3.

Für dich könnte auch PExpect praktisch sein.

Verfasst: Sonntag 12. Juni 2005, 16:29
von Hangman
hmmm dann werd ich mal mein glück mit pexpect versuchen...
ich hab grade nur python2.3 weil ich 2.4 unter linux irgendwie nicht mit pygame zum laufen krieg :(
und subprocess is ja nur als windows-install datei verfügbar^^
naja ich werd mir dann mal pexpect anschaune...