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

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

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

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

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

​ pip install itchat

​ 引入第三方库

​ import itchat

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

def main():
pass
if __name__=='__main__':
main()
1
2
3
4
让微信运行

import itchat
def main():
# 登录微信 避免重复扫码 热加载
itchat.auto_login(hotReload=True)
# 微信运行起来
itchat.run()
if __name__=='__main__':
main()
1
2
3
4
5
6
7
8
接收微信消息,获得指令,执行操作

import os
@itchat.msg_register('Text')
def main(msg):
message = msg['Text']
if message == '关机':
os.system('shutdown /s /t 0')
1
2
3
4
5
6
大概思路已经得知,接下来我们应该做更多优化,比如解决误触等问题

完整代码如下:

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(http://www.my516.com):
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远程控制电脑的更多相关文章

  1. 使用python实现用微信远程控制电脑

    首先,我们要先看看微信远程控制电脑的原理是什么呢? 我们可以利用Python的标准库控制本机电脑,然后要实现远程的话,我们可以把电子邮件作为远程控制的渠道,我们用Python自动登录邮箱检测邮件,当我 ...

  2. python 使用微信远程控制电脑

    今天来分享一个"高大上"的技术--使用python编写一个能够用微信远程控制电脑的程序! 先来分析一下控制的详细流程: 我们使用微信给特定的邮箱发送一封邮件,当中包括了我们想要电脑 ...

  3. Remote Desktop安卓软件实现手机远程控制电脑

    这篇文章写的是利用Remote Desktop安卓软件实现手机远程控制电脑. 电脑上的操作: 鼠标右击计算机>属性>远程设置>计算机名 如下图:

  4. Python 修改电脑DNS

    Pc电脑一般连网都是动态DHCP获取局域的IP地址,而且DNS服务器为自动获取地址.要修改DNS就要打开本地网络-本地连接- 属性- TCP/IP 手动修改DNS. 其实Python也可以通过WMI接 ...

  5. python制作电脑定时关机办公神器,另含其它两种方式,无需编程!

      小编本人目前就是在电脑面前工作,常常会工作到凌晨两三点还在为自己的梦想奋斗着.有时在办公椅上就稀里糊涂睡着了,我相信有很多朋友和我一样,这样是很不好的.第一对身体不好,第二对电脑不好.   对身体 ...

  6. 通过ip远程控制电脑

    现在,很多人都用了不止一台电脑,而同时操作两台电脑是一件比较麻烦的事情,所以,如果能够使用一台电脑的鼠标键盘显示器,去远程控制另一台电脑,那就方便多了. 远程计算机设置 1.先确保本地计算机和远程计算 ...

  7. Mac上使用sunlogin向日葵软件远程控制电脑

    1 安装软件 控制端和客户端都安装 https://sunlogin.oray.com/personal/download/ 2 再两台电脑上都安装好客户端和控制端后,打开控制端软件 可以看到自己登录 ...

  8. 利用python查看电脑系统信息

    #查看python默认编码格式 >>> import sys >>> print sys.getdefaultencoding() #python 2.x 默认编码 ...

  9. 用Python打造电脑人脸屏幕解锁神器附带接头暗号!

    前言 最近突然有个奇妙的想法,就是当我对着电脑屏幕的时候,电脑会先识别屏幕上的人脸是否是本人,如果识别是本人的话需要回答电脑说的暗语,答对了才会解锁并且有三次机会.如果都没答对就会发送邮件给我,通知有 ...

随机推荐

  1. 一步一步学Silverlight 2系列(5):实现简单的拖放功能

    述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, ...

  2. Java String 和 new String()的区别

    Java String 和 new String()的区别 本文转自:http://www.cnblogs.com/heima-jieqi/archive/2012/04/10/2440086.htm ...

  3. python库学习笔记——爬虫常用的BeautifulSoup的介绍

    1. 开启Beautiful Soup 之旅 在这里先分享官方文档链接,不过内容是有些多,也不够条理,在此本文章做一下整理方便大家参考. 官方文档 2. 创建 Beautiful Soup 对象 首先 ...

  4. Servlet单例非安全解析

    Servlet容器默认是采用单实例多线程的方式处理多个请求 Servlet容器<Web容器<应用服务器?apache<tomcat<websphere Servlet不是线程安 ...

  5. Tomcat cluster and session

    Cluster and session session consistency (1) session sticky source_ip: nginx: ip_hash haproxy: source ...

  6. Linux下 SSH远程管理服务

    第1章 SSH基本概述 1.1 SSH服务协议说明 SSH 是 Secure Shell Protocol 的简写,由 IETF 网络工作小组(Network Working Group )制定 在进 ...

  7. 利用jenv安装maven, tomcat,zookeeper等

    jenv有关的网站: http://jenv.io https://github.com/gcuisinier/jenv 1.  执行jenv安装 $ curl -L -s get.jenv.io | ...

  8. jquery的validate的用法

    //引入js文件 //jquery 文件 <script src="__PUBLIC__/static/wap/js/jquery.min.js?v=2.1.4">&l ...

  9. ajax异步请求后台数据处理

    $.ajax({ type: "POST", url: "./rule/list/device/list", data: JSON.stringify(obj) ...

  10. 字符串处理 BestCoder Round #43 1001 pog loves szh I

    题目传送门 /* 字符串处理:是一道水题,但是WA了3次,要注意是没有加'\0'的字符串不要用%s输出,否则在多组测试时输出多余的字符 */ #include <cstdio> #incl ...