python如何实现远程控制电脑(结合微信)


Posted in Python onDecember 21, 2015

不知道大家有没有这样一个烦恼,“自己的电脑总是被别人使用,又不好意思设置密码”,所以利用python设计了一个程序来实现自由管控。
功能虽然简单,但大家可以通过其思路来实现更多的功能。

大致功能主要是两个部分,

  • 一、电脑开机时,我的手机能收到通知。
  • 二、可以通过手机发个特定的mail,就可以控制电脑关机。

第一个步骤申请一个邮箱,使这个邮箱与你的手机号码绑定,然后你在这个邮箱中设定如果有新的邮件就发短信通知,这样开机时往这个邮箱发个mail,我手机就会收到短信通知了。

第二个步骤通过python 脚本,定时去检查163.com邮箱中是否有指定的邮件,如果有,则执行特定功能(我的是关机)。

第一步骤申请成功以后。手机也可以通过一个号码10658139来发送mail,编辑短信格式如:test@163.com(空格)主旨(空格)正文.

这样我如果想关机,就会用手机发个mail到163邮箱,主旨是'关机',程式检测到这个mail以后就会执行关机动作。
注意:手机发送邮件时的格式,注意读取邮件时get_payload的输出,根据输出和你发的邮件内容要匹配,当时我就遇到\n的问题。

回去后想了想,既然可以用手机邮箱控制,那么大家都用的是智能机咯,而且大家都比较喜欢玩微信,那么微信里面有个邮箱助手,实时提醒你新邮件,这样可以更方便的控制你自己的机子咯!!!!!

#!/etc/bin/env python
#-*-encoding=utf-8-*-
#auth@:dengyongkai
#blog@:blog.sina.com.cn/kaiyongdeng
 
import poplib,email
from email.header import decode_header
import smtplib
import time
import os,sys
import random
 
def accp_mail():
  try:
    p=poplib.POP3('pop.qq.com')
    p.user('用户名')
    p.pass_('密码')
    ret = p.stat()
  except poplib.error_proto,e:
    return 1
    print "Login failed:",e
    sys.exit(1)
#  for i in range(1,ret[0]+1):
#    str=s.top(i,0)
#    strlist=[]
#    for x in str[1]:
#      try:
#        strlist.append(x.decode())
#      except:
#        try:
#          strlist.append(x.decode('gbk'))
#        except:
#          strlist.append(x.decode('big5'))
#          
#    mm = email.message_from_string('\n'.join(strlist))
#    sub=decode_header(mm['subject'])
#    if sub[0][1]:
#      submsg = sub[0][0].decode(sub[0][1])
#    else:
#      submsg = sub[0][0]
#
#    if submsg.strip()=='startpc':
#      s.dele(i)
#      return 0
#    
#  s.quit()
#  return 1
#
  for item in p.list()[1]:
    number,octets = item.split(' ')
#    print "Message %s: %sbytes"%(number,octets)
    lines = p.retr(number)[1]
    msg = email.message_from_string("\n".join(lines))
#  print msg.as_string()
    print msg.get_payload()
    if msg.get_payload()=="start\n\n":
      return 0
 
def send_mail():
  try:
    handle = smtplib.SMTP('smtp.163.com', 25)
    handle.login('********@163.com','密码')
    msg = "To: ********@qq.com\r\nFrom: ********@163.com\r\nSubject: startpc \r\n\r\nstart\r\n"
    handle.sendmail('********@163.com','********@qq.com', msg)
    handle.close()
    return 1
  except:
    return 0
 
 
if __name__=='__main__':
  while send_mail()==0:
    time.sleep(2)
 
  while 1:
    time.sleep(5)
    if accp_mail()==0:
      os.system('shutdown -f -s -t 10 -c closing...')
      #print "哈哈哈哈哈哈哈,成功啦!!!!!!"
      break

以上就是python实现远程控制电脑的方法,解决了大家的烦恼,赶紧试验一下吧!

Python 相关文章推荐
Python中使用SAX解析xml实例
Nov 21 Python
Django框架中处理URLconf中特定的URL的方法
Jul 20 Python
Python中集合的内建函数和内建方法学习教程
Aug 19 Python
Python中生成Epoch的方法
Apr 26 Python
解决sublime+python3无法输出中文的问题
Dec 12 Python
对python多线程中互斥锁Threading.Lock的简单应用详解
Jan 11 Python
关于Pycharm无法debug问题的总结
Jan 19 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
Jun 04 Python
Python学习笔记之自定义函数用法详解
Jun 08 Python
Python生成器generator原理及用法解析
Jul 20 Python
Python+OpenCV图像处理——图像二值化的实现
Oct 24 Python
Python保存并浏览用户的历史记录
Apr 29 Python
python从入门到精通(DAY 3)
Dec 20 #Python
python从入门到精通(DAY 2)
Dec 20 #Python
利用python代码写的12306订票代码
Dec 20 #Python
python从入门到精通(DAY 1)
Dec 20 #Python
在DigitalOcean的服务器上部署flaskblog应用
Dec 19 #Python
用ReactJS和Python的Flask框架编写留言板的代码示例
Dec 19 #Python
使用Python编写简单的端口扫描器的实例分享
Dec 18 #Python
You might like
截获网站title标签之家内容的例子
2006/10/09 PHP
PHP中PDO基础教程 入门级
2011/09/04 PHP
PHP 数组和字符串互相转换实现方法
2013/03/26 PHP
smarty自定义函数用法示例
2016/05/20 PHP
php如何实现不借助IDE快速定位行数或者方法定义的文件和位置
2017/01/17 PHP
php装饰者模式简单应用案例分析
2019/10/23 PHP
Laravel实现ORM带条件搜索分页
2019/10/24 PHP
PHP实现简易图形计算器
2020/08/28 PHP
script不刷新页面的联动前后代码
2013/09/18 Javascript
js中自定义方法实现停留几秒sleep
2014/07/11 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
2015/02/13 Javascript
XMLHttpRequest Level 2 使用指南
2016/08/26 Javascript
jQuery simpleModal插件的使用介绍
2016/08/30 Javascript
Bootstrap源码解读导航条(7)
2016/12/23 Javascript
Vue2递归组件实现树形菜单
2017/04/10 Javascript
Vue如何实现监听组件原生事件
2020/07/03 Javascript
解决在Vue中使用axios POST请求变成OPTIONS的问题
2020/08/14 Javascript
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
详解Swift中属性的声明与作用
2016/06/30 Python
Python如何为图片添加水印
2016/11/25 Python
Python subprocess模块详细解读
2018/01/29 Python
Python正则匹配判断手机号是否合法的方法
2020/12/09 Python
Python正则表达式匹配和提取IP地址
2019/06/06 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
2020/07/13 Python
Python实现手势识别
2020/10/21 Python
python 元组和列表的区别
2020/12/30 Python
Python接口自动化测试框架运行原理及流程
2020/11/30 Python
英国自行车商店:AW Cycles
2021/02/24 全球购物
什么是事务?为什么需要事务?
2012/01/09 面试题
委托书的写法
2014/09/16 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
民事二审代理词
2015/05/25 职场文书
2019朋友新婚祝福语精选
2019/10/10 职场文书
python基于tkinter制作无损音乐下载工具
2021/03/29 Python
Keras多线程机制与flask多线程冲突的解决方案
2021/05/28 Python
Java 关于String字符串原理上的问题
2022/04/07 Java/Android