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有序字典简单实现方法示例
Sep 28 Python
Python爬虫通过替换http request header来欺骗浏览器实现登录功能
Jan 07 Python
微信跳一跳python辅助脚本(总结)
Jan 11 Python
python实现微信发送邮件关闭电脑功能
Feb 22 Python
python 阶乘累加和的实例
Feb 01 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
May 13 Python
浅谈python图片处理Image和skimage的区别
Aug 04 Python
详解python statistics模块及函数用法
Oct 27 Python
python创建学生成绩管理系统
Nov 22 Python
Python读取配置文件(config.ini)以及写入配置文件
Apr 08 Python
4款Python 类型检查工具,你选择哪个呢?
Oct 30 Python
Django基础CBV装饰器和中间件
Mar 22 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
完美解决Thinkphp3.2中插入相同数据的问题
2017/08/01 PHP
JavaScript中使用构造函数实现继承的代码
2010/08/12 Javascript
jQuery创建平滑的页面滚动(顶部或底部)
2013/02/26 Javascript
jquery 文本上下无缝滚动,鼠标放上去就停止 小例子
2013/06/05 Javascript
jquery实现简单易懂的图片展示小例子
2013/11/21 Javascript
JQuery1.8 判断元素是否绑定事件的方法
2014/07/10 Javascript
使用ngView配合AngularJS应用实现动画效果的方法
2015/06/19 Javascript
一览画面点击复选框后获取多个id值的方法
2016/05/30 Javascript
jQuery实现移动端手机商城购物车功能
2016/09/24 Javascript
Nodejs--post的公式详解
2017/04/29 NodeJs
jquery.validate表单验证插件使用详解
2017/06/21 jQuery
javaScript实现复选框全选反选事件详解
2020/11/20 Javascript
基于 flexible 的 Vue 组件:Toast -- 显示框效果
2017/12/26 Javascript
Bootstrap treeview实现动态加载数据并添加快捷搜索功能
2018/01/07 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
Vue props中Object和Array设置默认值操作
2020/07/30 Javascript
[08:29]DOTA2每周TOP10 精彩击杀集锦vol.7
2014/06/25 DOTA
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
python flask解析json数据不完整的解决方法
2019/05/26 Python
python多进程间通信代码实例
2019/09/30 Python
让Django的BooleanField支持字符串形式的输入方式
2020/05/20 Python
HTML5调用手机摄像头拍照的实现思路及代码
2014/06/15 HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
2015/04/24 HTML / CSS
波比布朗英国官网:Bobbi Brown英国
2017/11/13 全球购物
英国设计师泳装、沙滩装和比基尼在线精品店:Beach Cafe
2019/08/28 全球购物
中学实习教师自我鉴定
2013/12/12 职场文书
八一建军节活动方案
2014/02/10 职场文书
债务纠纷委托书范本
2014/10/14 职场文书
初中运动会前导词
2015/07/20 职场文书
思品教学工作总结
2015/08/10 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
九年级历史教学反思
2016/02/19 职场文书
《水上飞机》教学反思
2016/02/20 职场文书
优秀大学生申请书
2019/06/24 职场文书