python实现远程控制电脑

yipeiwu_com6年前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设计】。

相关文章

基于Python开发chrome插件的方法分析

基于Python开发chrome插件的方法分析

本文实例讲述了基于Python开发chrome插件的方法。分享给大家供大家参考,具体如下: 谷歌Chrome插件是使用HTML、JavaScript和CSS编写的。如果你之前从来没有写过...

Python去掉字符串中空格的方法

我们经常在处理字符串时遇到有很多空格的问题,一个一个的去手动删除不是我们程序员应该做的事情,今天这篇技巧的文章【听图阁-专注于Python设计】就来给大家讲一下,如何用Python去除字...

pandas.dataframe按行索引表达式选取方法

需要把一个从csv文件里读取来的数据集等距抽样分割,这里用到了列表表达式和dataframe.iloc 先生成索引列表: index_list = ['%d' %i for i in...

Pytorch之卷积层的使用详解

1.简介(torch.nn下的) 卷积层主要使用的有3类,用于处理不同维度的数据 参数 Parameters: in_channels(int) – 输入信号的通道 out_channe...

django创建最简单HTML页面跳转方法

假设已经通过: django-admin startproject +项目名称 python manage.py +项目应用 创建好一个项目以及内部的项目应用后,并且会运行django看...