python实现远程控制电脑

yipeiwu_com7年前Python基础

python远程控制电脑的具体代码,供大家参考,具体内容如下

python拥有大量的第三方库,且语法简单。今天老杨就用python实现远程控制电脑

所谓,谋定而后动,在实现任何一个需求之前,我们需要先分析,捋清楚一个思路,远程控制电脑,无非就是接收远程的命令和根据命令去执行对应的操作。那这里,我们借助微信来接收命令,利用我们的一个itchat库实现远程控制电脑

按上所说,我们要完成需求,无非是把任务细分,首先,接收到消息指令,再根据对应的指令执行相对应的操作,其中我们需要考虑一个问题就是误触问题。

python有大量的第三方库,这里我们借助itchat这个第三方库

首先通过pip进行第三方库的安装

pip install itchat

引入第三方库

​import itchat

开始代码,不管三七二十一,先来个标准套路:

def main():
 pass
if __name__=='__main__':
 main()

让微信运行

import itchat
def main():
 # 登录微信 避免重复扫码 热加载
 itchat.auto_login(hotReload=True)
 # 微信运行起来
 itchat.run()
if __name__=='__main__':
 main()

接收微信消息,获得指令,执行操作

import os
@itchat.msg_register('Text')
def main(msg):
 message = msg['Text']
 if message == '关机':
  os.system('shutdown /s /t 0')

大概思路已经得知,接下来我们应该做更多优化,比如解决误触等问题

完整代码如下:

import itchat
import os
import cv2
@itchat.msg_register('Text')
def main(msg):
 message = msg['Text'].strip()
 ToUserName = msg['ToUserName']
 FromUserName = msg['FromUserName']
 if FromUserName == ToUserName:
 tip = '输入 on 开启操控 默认是关闭的'
 itchat.send(tip,'filehelper')
 if ToUserName == 'filehelper':
 control(message)
flag = False
def control(message):
 global flag
 if message == 'on':
 tip = '现在可以开始操控了 输入关机 或者输入 拍照'
 itchat.send(tip,'filehelper')
 flag = True
 if message == 'off':
 tip = '现在已经操控了 输入 on 打开操控'
 itchat.send(tip,'filehelper')
 flag = False
 if flag == True:
 if message == '关机':
  cmd()
 elif message == '拍照':
  img()
def cmd():
 os.system('shutdown /s /t 0')
def img():
 cap = cv2.VideoCapture(0)
 ret ,img = cap.read()
 filename = 'wechat.jpg'
 cv2.imwrite(filename,img)
 cap.release()
 itchat.send_image(filename,'filehelper')
def main():
 itchat.auto_login(hotReload=True)
 itchat.run()
if __name__=='__main__':
 main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对pandas的dataframe绘图并保存的实现方法

对dataframe绘图并保存: ax = df.plot() fig = ax.get_figure() fig.savefig('fig.png') 可以制定列,对该列各取...

python实现关闭第三方窗口的方法

背景 最近在测试一款软件的关闭第三方窗口的功能,感觉实现应该挺简单的。所以就尝试了。由于说它的实现是靠c++实现的,本人对c++实在不在行,但是python的第三方库实际上是封装了一套w...

Django url,从一个页面调到另个页面的方法

创建项目和应用 django-admin startproject zqxt_views(项目名) cd zqxt_views python manage.py startapp c...

Pandas DataFrame数据的更改、插入新增的列和行的方法

Pandas DataFrame数据的更改、插入新增的列和行的方法

一、更改DataFrame的某些值 1、更改DataFrame中的数据,原理是将这部分数据提取出来,重新赋值为新的数据。 2、需要注意的是,数据更改直接针对DataFrame原数据更改,...

python 判断自定义对象类型

要判断自定义对象的类型,用__class__方法,或者用isinstance(object, class-or-type-or-tuple)-->bool 用__class__不能...