[Python] print solo si cambia la variable

Iniciado por Fyrox, 18 Septiembre 2011, 01:12 AM

0 Miembros y 1 Visitante están viendo este tema.

Fyrox

Buenas de nuevo, esta vez mas que un error traigo una duda sobre un programilla que estoy intentando hacer. Veréis. me he lanzado a hacer un pequeño keylogger local muy muy básico (de momento, ya lo ampliare) con el modulo pyHook. Aquí esta:

Código (python) [Seleccionar]
import pythoncom, pyHook

def strokes(event):
   print event.WindowName
   print event.Key

hm = pyHook.HookManager()
hm.KeyDown = strokes
hm.HookKeyboard()
pythoncom.PumpMessages()


Bien, este pequeño keylogger hace que cada vez que se pulse una tecla imprima en el programa el nombre de la ventana y la tecla. Esto queda bastante mal a la hora de leer lo que se ha escrito, ya que se escribiria el nombre de la ventana por cada tecla que se pulsase. Para solucionarlo, lo que quiero hacer es que imprima el nombre de la ventana, la tecla pulsada, y luego solamente imprima de nuevo el nombre de la ventana si esta cambia, no se si me explico.

Por ejemplo: escribes "facebook" en google, por lo que el nombre de la ventana seria "Google". A partir de ahi, quiero que solamente vuelva a escribir el nombre de la ventana si deja de ser "Google" para ser "Facebook" por ejemplo. Gracias de antemano.

Novlucker

Prueba guardando en una variable global para luego con un IF cotejar su valor

Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein