我的编程空间,编程开发者的网络收藏夹
学习永远不晚

利用Python写个摸鱼监控进程

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

利用Python写个摸鱼监控进程

继打游戏、看视频等摸鱼行为被监控后,现在打工人离职的倾向也会被监控。

有网友爆料称知乎正在低调裁员,视频相关部门几乎要裁掉一半。而在知乎裁员的讨论区,有网友表示企业安装了行为感知系统,该系统可以提前获知员工跳槽念头。

而知乎在否认了裁员计划的同时,也声明从未安装使用过网上所说的行为感知系统,今后也不会启用类似软件工具。

因为此事,深信服被推上风口浪尖,舆论关注度越来越高。

一时间,“打工人太难了”“毫无隐私可言”的讨论层出不穷。

今天就带大家领略一下怎么写几行 Python 代码,就能监控电脑。

监控键盘

如果公司偷偷在我们的电脑上运行了一个后台进程,来监控我们的键盘事件,最简单的 python 写法大致是这样的:

from pynput import keyboard
 
def on_press(key):
    print(f'{key} :pushed')
 
 
def on_release(key):
    if key == keyboard.Key.esc:
        return False
 
 
with keyboard.Listener(on_press=on_press, on_release=on_release) as lsn:
    lsn.join()

随意敲击键盘,你就会从控制台看到这样的输出:

代码内容就是两个方法,一个是监听按键事件,另一个是监听退出事件——敲击 ESC 按键后释放就退出了。

监控鼠标

如果还要监听鼠标事件,那么上这段代码就行了:

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!')
 
 
# 定义鼠标监听线程
with mouse.Listener(on_click=on_click) as listener:
    listener.join()

这段代码主要是监听鼠标的左右键点击操作,运行之后操作鼠标,就可以看到控制台打印如下结果:

细心的你一定会发现,每次点击事件,都打印了两次。这是因为按下和松开都会触发鼠标事件。

记录监控日志

键盘事件和鼠标事件都有了,是时候将二者结合起来,把用户的操作记录到日志了。这里我们用 loguru 来记录日志,这个 python 模块我们之前的文章也讲过。

整个代码如下:

from pynput import keyboard, mouse
from loguru import logger
from threading import Thread
 
# 定义日志文件
logger.add('moyu.log')
 
 
def on_press(key):
    logger.debug(f'{key} :pushed')
 
 
def on_release(key):
    if key == keyboard.Key.esc:
        return False
 
 
# 定义键盘监听线程
def press_thread():
    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!')
    else:
        return False
 
 
# 定义鼠标监听线程
def click_thread():
    with mouse.Listener(on_click=on_click) as listener:
        listener.join()
 
 
if __name__ == '__main__':
    # 起两个线程分别监控键盘和鼠标
    t1 = Thread(target=press_thread())
    t2 = Thread(target=click_thread())
    t1.start()
    t2.start()

运行之后,你就可以在同级目录下的日志文件中,看到这样的内容了:

完整代码

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
@author: 闲欢
"""
from pynput import keyboard, mouse
from loguru import logger
from threading import Thread

# 定义日志文件
logger.add('moyu.log')


def on_press(key):
    logger.debug(f'{key} :pushed')


def on_release(key):
    if key == keyboard.Key.esc:
        return False


# 定义键盘监听线程
def press_thread():
    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!')


# 定义鼠标监听线程
def click_thread():
    with mouse.Listener(on_click=on_click) as listener:
        listener.join()


if __name__ == '__main__':
    # 起两个线程分别监控键盘和鼠标
    t1 = Thread(target=press_thread())
    t2 = Thread(target=click_thread())
    t1.start()
    t2.start()

总结

本文主要通过 pynput 这个 python 模块讲解一下怎么记录键盘和鼠标的操作。这几行简单的代码对于监控输入密码之类的简单操作可以使用,但是对于聊天记录之类的复杂语句,你还需要针对日志用 NLTK 语言处理,才能复原你的聊天记录。

以上就是利用Python写个摸鱼监控进程的详细内容,更多关于Python摸鱼监控进程的资料请关注编程网其它相关文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

利用Python写个摸鱼监控进程

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

怎么用Python写个摸鱼监控进程

本篇内容主要讲解“怎么用Python写个摸鱼监控进程”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用Python写个摸鱼监控进程”吧!监控键盘如果公司偷偷在我们的电脑上运行了一个后台进程,来
2023-06-29

使用Python写个小监控

1.入门 首先你得用过C/C++、java、Javascript等的一种,编程小白估计比较艰难,有一定编程经验的python小白相对简单些。 1.1 Hello World! Python安装比较简单,到官网上下载安装包,一路下一步就可以了
2022-06-04

利用zabbix监控ogg进程(Linux平台)

前段时间生产的一个数据库的ogg进程挂了快半个月才被发现,已经起不来了,只有重新初始化再同步。因此很有必要监控下ogg的进程,这里给大家介绍如何使用zabbix监控oracle的ogg的进程。思路就是利用oracle用户去查ogg的相关状态
2022-06-03

Python 多进程使用之监控

下面简单写下实现方式,具体代码不会全部贴出来。需要使用的py库有下面几个import urllib2import socketfrom multiprocessing import Poolurllib2用于请求网页socket用于限制网络
2023-01-31

Shell中怎么利用memcached实现进程监控

这期内容当中小编将会给大家带来有关Shell中怎么利用memcached实现进程监控,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。WEB服务器使用memcached,但是不知道为什么memcached老是
2023-06-09

python如何监控某个进程内存的情况

这篇文章主要讲解了“python如何监控某个进程内存的情况”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python如何监控某个进程内存的情况”吧!python监控某个进程内存测试场景:某个
2023-06-30

用Python的Flask框架结合MySQL写一个内存监控程序

这里以监控内存使用率为例,写的一个简单demo性程序,具体操作根据51reboot提供的教程写如下。 一、建库建表 创建falcon数据库:mysql> create database falcon character set utf8;
2022-06-04

如何利用VB编写一个远程控制程序

这篇文章主要为大家展示了“如何利用VB编写一个远程控制程序”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何利用VB编写一个远程控制程序”这篇文章吧。一、所用控件在程序中将使用Winsock控件
2023-06-17

使用Python实现监控进程是否有病毒

使用Python监控进程以检测病毒本文介绍了如何利用Python监控进程,检测是否存在病毒。通过导入必要的库,可以获取正在运行的进程列表并检查可疑活动,例如高资源使用、未知的可执行文件路径或可疑命令行参数。发现可疑进程后,可以采取措施,包括终止进程、扫描可执行文件或隔离系统。监控脚本可以定期运行,以持续检测和解决病毒感染,从而增强系统的安全性。
使用Python实现监控进程是否有病毒
2024-04-02

基于Python怎么编写一个监控CPU的应用系统

这篇“基于Python怎么编写一个监控CPU的应用系统”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“基于Python怎么编写
2023-07-02

描述Netdata中利用插件进行第三方应用监控的过程

Netdata是一款开源的实时性能监控工具,它可以帮助用户监控系统的性能数据,并提供详细的实时监控信息。除了监控系统自身的性能数据之外,Netdata还支持通过插件监控第三方应用程序的性能数据。要在Netdata中利用插件监控第三方应用程
描述Netdata中利用插件进行第三方应用监控的过程
2024-06-03

怎么用Python编写一个进程勾选器

要编写一个进程勾选器(也就是监视和选择进程)的Python程序,可以使用psutil库来获取系统当前运行的进程信息,并使用tkinter库来创建一个图形化界面来展示进程信息和进行选择操作。以下是一个简单的示例代码,实现了一个基础的进程勾选
怎么用Python编写一个进程勾选器
2024-03-05

python是怎样实现监控指定进程的cpu和内存使用率

这篇文章给大家介绍python是怎样实现监控指定进程的cpu和内存使用率,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。为了测试某个服务的稳定性,通常需要在服务长时间运行的情况下,监控其资源消耗情况,比如cpu和内存使用
2023-06-22

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录