system processe starten und überwachen / protokollien?

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.
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

system processe starten und überwachen / protokollien?

Beitragvon MoR4euZ » Mittwoch 18. Oktober 2006, 21:56

hallo

habe mich gerade erst im forum angemeldet und habe fragen über fragen ;)

ich würde gerne eine gamestatistik wie bei xfire (www.de.xfire.com) coden

am liebsten mit python
literatur ist schon bestellt :)

dafür muss ich system processe (erstmal nur windows) starten und überwachen können

aus der python library reference werde ich nicht so wirklich schlau :(
das meiste brauchbare ist ja nur für unix vorhanden richtig?

oder kann ich brauchbaren C code importieren?

http://www.python-forum.de/viewtopic.php?p=46999
dieser thread hatt mich gerade etwas geschockt sorry ;)

ich hoffe das ich einpaar hilfreiche antworten erhalten werde

danke :D
BlackJack

Re: system processe starten und überwachen / protokollien?

Beitragvon BlackJack » Mittwoch 18. Oktober 2006, 22:24

MoR4euZ hat geschrieben:dafür muss ich system processe (erstmal nur windows) starten und überwachen können

aus der python library reference werde ich nicht so wirklich schlau :(
das meiste brauchbare ist ja nur für unix vorhanden richtig


Starten ist mit `os.system()` oder dem `subprocess` Modul weitgehend plattformunabhängig möglich.

Ich weiss nicht ganz genau was Du machen willst, aber ein Programm starten und messen wie lange es gelaufen ist, sollte zum Beispiel so möglich sein:

Code: Alles auswählen

import os
import time

def main():
    start_time = time.time()
    os.system('kwrite')
    running_time = time.time() - start_time
    print ('Das Programm lief %d Minuten und %d Sekunden.'
           % divmod(running_time, 60))

if __name__ == '__main__':
    main()
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

Beitragvon MoR4euZ » Mittwoch 18. Oktober 2006, 22:59

du hast ja keine ahnung wie glücklich mich diese 12 zeilen quellcode machen ;)

meine begeisterung und motivation was python angeht steigt tag für tag hrhr

vielen dank

die tage kommt mein python buch dann gehts richtig los :D
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

Beitragvon MoR4euZ » Montag 23. Oktober 2006, 18:00

Ich habe jetzt mal zeit gefunden und habe weiter ausprobiert und die fragezeichen werden leider immer mehr nicht weniger :(


3 fragen quälen mich am meisten :D

-wie bekomme ich die path variable in os.system()? (ähnlich wie bei der time?)
-wie muss der divmod lauten wen ich auch stunden mit drin haben will?
-wie bekomme ich die printausgabe aus der main in mein cfgfile?


pyfire.py

Code: Alles auswählen

import os
import time
import ConfigParser

cfg = file('./pyfire.cfg', 'r')
config = ConfigParser.ConfigParser()
config.readfp(cfg)
cfg.close()

global path
path = config.get('process', 'calc')

def main():
    start_time = time.time()
    os.system(r'path')
    running_time = time.time() - start_time
    print ('Das Programm lief x Stunden, %d Minuten und %d Sekunden.'
           % divmod(running_time, 60))

if __name__ == '__main__':
    main()



pyfire.cfg[code=][process]
calc = c:\windows\system32\calc.exe[/code]

ich fummel mal weiter
wäre für hilfe sehr dankbar :)
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

Beitragvon murph » Montag 23. Oktober 2006, 18:14

naja, für den configparser siehe http://docs.python.org/lib/module-ConfigParser.html

sonst würde ich das stunden/minuten/sekundenproblem lösen, indem ich

Code: Alles auswählen

h, tmp_sec = divmod(time, 3600)
min, sec = divmod(tmp_sec, 60)
Zuletzt geändert von murph am Montag 23. Oktober 2006, 19:43, insgesamt 1-mal geändert.
BlackJack

Beitragvon BlackJack » Montag 23. Oktober 2006, 18:27

MoR4euZ hat geschrieben:-wie bekomme ich die path variable in os.system()? (ähnlich wie bei der time?)


Erstmal das ``global`` rausnehmen, das hat auf Modulebene keine Wirkung. Und dann vergisst Du am besten erst einmal das es ``global`` überhaupt gibt.

Und dann musst Du beim Aufruf von `os.system()` einfach den Namen an den der Pfad gebunden ist hinschreiben. Also einfach ``os.system(path)``.
Benutzeravatar
MoR4euZ
User
Beiträge: 34
Registriert: Mittwoch 18. Oktober 2006, 21:21
Wohnort: Essen
Kontaktdaten:

Beitragvon MoR4euZ » Montag 23. Oktober 2006, 21:11

ohje was peinlich :oops:

ich hatte die syntax so drin aber zu diesem zeitpunkt muss wo anders ein fehler gewesen sein :(

das war zu offentsichlich sorry ;)

für heute habe ich kein bock mehr nenene
ich lese mal bischel in meinem python buch weiter sonst wird das nie was hrhrhr

danke und gute nacht

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder