Captando teclas con Python, WHILE no sirve

Iniciado por WaAYa HaCK, 10 Agosto 2011, 19:20 PM

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

WaAYa HaCK

Hola!
Estaba intentando hacer un simple script que guarda todo lo escrito por el usuario, al estilo keylogger (su fin no es malware, debo decir; es sólo un proyecto personal) y por el momento funciona, es muy simple:
Código (python) [Seleccionar]
#!/usr/bin/env python
# -*- coding: cp1252 -*-
f = open("log.txt", "a")
while 1:
    log = raw_input("")
    if log == '\n':
        f.write("\n")
    if log == '\r':
        f.write("\r")
    elif log == '\t':
        f.write("\t")
    elif log == "\\":
        f.write("\\")
    elif log == "\'":
        f.write("'")
    elif log == "\"":
        f.write("\"")
    elif log == "\b":
        f.write(log[:-3])
    else:
        f.write(log)


Es muy simple, no?
Pero yo no quiero eso.

Cuando pulso ENTER, evidentemente no se escribe "\n" ni "\r", ya que el enter se capta para ejecutar la orden del while  :P


Hace tiempo encontré unas librerías que permitían captar pulsaciones de teclas.

1.-Cómo se llamaba la librería? Porque he vuelto a buscarla y no la encuentro.
2.-Alguien podría, una vez solucionado el 1, ayudarme en el uso de la misma?
3.-Alguien tiene otra opción viable?


Gracias!
La cacatúa yoyó es nueva en el zoo!

Novlucker

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

WaAYa HaCK

Suerte que apareciste tú, como siempre  :xD
Muchas gracias! Voy a mirar a ver qué hago.
La cacatúa yoyó es nueva en el zoo!