当前位置: 首页 > 编程笔记 >

python编写微信远程控制电脑的程序

林修真
2023-03-14
本文向大家介绍python编写微信远程控制电脑的程序,包括了python编写微信远程控制电脑的程序的使用技巧和注意事项,需要的朋友参考一下

今天来分享一个“高大上”的技术——使用python编写一个可以用微信远程控制电脑的程序!

先来分析一下控制的具体流程:

我们使用微信给特定的邮箱发送一封邮件,其中包含了我们想要电脑执行的命令,然后电脑上的python程序获取到这封邮件,然后解析其中的命令,再交付给电脑执行。可以看出,这其中主要的技术难点就是获取邮件了!但是!这没有任何问题,大家看到我的上一篇博客《python 收发邮件》就可以了!

下面给出使用python收发邮件并执行邮件命令的代码。

# -*- coding:utf-8 -*- 
from email.mime.text import MIMEText 
import poplib 
import smtplib 
import os 
 
 
class MailManager(object): 
 
  def __init__(self): 
    self.popHost = 'pop.sina.com' 
    self.smtpHost = 'smtp.sina.com' 
    self.port = 25 
    self.userName = 'ivanzgj@sina.com' 
    self.passWord = 'zgj123' 
    self.bossMail = '475176416@qq.com' 
    self.login() 
    self.configMailBox() 
 
  # 登录邮箱 
  def login(self): 
    try: 
      self.mailLink = poplib.POP3_SSL(self.popHost) 
      self.mailLink.set_debuglevel(0) 
      self.mailLink.user(self.userName) 
      self.mailLink.pass_(self.passWord) 
      self.mailLink.list() 
      print u'login success!' 
    except Exception as e: 
      print u'login fail! ' + str(e) 
      quit() 
 
  # 获取邮件 
  def retrMail(self): 
    try: 
      mail_list = self.mailLink.list()[1] 
      if len(mail_list) == 0: 
        return None 
      mail_info = mail_list[0].split(' ') 
      number = mail_info[0] 
      mail = self.mailLink.retr(number)[1] 
      self.mailLink.dele(number) 
 
      subject = u'' 
      sender = u'' 
      for i in range(0, len(mail)): 
        if mail[i].startswith('Subject'): 
          subject = mail[i][9:] 
        if mail[i].startswith('X-Sender'): 
          sender = mail[i][10:] 
      content = {'subject': subject, 'sender': sender} 
      return content 
    except Exception as e: 
      print str(e) 
      return None 
 
  def configMailBox(self): 
    try: 
      self.mail_box = smtplib.SMTP(self.smtpHost, self.port) 
      self.mail_box.login(self.userName, self.passWord) 
      print u'config mailbox success!' 
    except Exception as e: 
      print u'config mailbox fail! ' + str(e) 
      quit() 
 
  # 发送邮件 
  def sendMsg(self, mail_body='Success!'): 
    try: 
      msg = MIMEText(mail_body, 'plain', 'utf-8') 
      msg['Subject'] = mail_body 
      msg['from'] = self.userName 
      self.mail_box.sendmail(self.userName, self.bossMail, msg.as_string()) 
      print u'send mail success!' 
    except Exception as e: 
      print u'send mail fail! ' + str(e) 
 
if __name__ == '__main__': 
  mailManager = MailManager() 
  mail = mailManager.retrMail() 
  if mail is not None: 
    cmd = mail['subject'] 
    os.system(cmd) 
    mailManager.sendMsg() 

上述代码的逻辑是:邮件的主题为要执行的命令,然后python获取邮箱的邮件,解析其主题,然后交到命令行执行。执行成功后发送一封success的邮件给我。

下面测试一下。我使用qq邮箱给我指定的邮箱发送了下面这样一封邮件。

这封邮件的命令是要打开mail.py这个文件,然后我们在电脑上运行上述代码程序,就可以看到其打开了mail.py这个文件了!
现在,这个程序只会执行一次,然后就会退出,我们只要给它加个死循环就可以让它一直运行了~

if __name__ == '__main__': 
  while True: 
    mailManager = MailManager() 
    mail = mailManager.retrMail() 
    if mail is not None: 
      cmd = mail['subject'] 
      os.system(cmd) 
      mailManager.sendMsg() 
    time.sleep(5) 

现在我们只要运行其这个程序,然后我们拿着手机,打开微信,一封邮件,便可随时远控电脑!想想,你们拿着这个程序,打包一下,然后悄悄地撞到你心仪的妹子电脑上,趁她不注意的时候,发一封邮件,然后让妹子的电脑干点什么事情(例如显示一段文字表白什么的),想想都很激动呢!!!

好的,下面直接给出一个源码链接吧。
python 微信远程控制电脑

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 实现功能: 鼠标控制模式: 鼠标的移动 鼠标左键/右键点击 鼠标滑轮 文件的拖动 自定义音量键功能  键盘输入模式: 向电脑发送文字(中英) 回车 退格 以及DOS下的输入 电脑方向键的控制 WSAD模式 和 方向键模式 音量键可根据用户需求自定义设置功能  手柄控制模式: 横屏下 左边为控制方向 右边为操作 可自定义 左边控制方式为鼠标控制 和 键盘控制 右边 可自定义操作方式 技术点: 多线程

  • 本文向大家介绍Python使用itchat模块实现简单的微信控制电脑功能示例,包括了Python使用itchat模块实现简单的微信控制电脑功能示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python使用itchat模块实现简单的微信控制电脑功能。分享给大家供大家参考,具体如下: 发送其他消息 给自己发送消息只需要发出消息,不指定发送者,默认发给自己(登陆者) 发送图片,ToUser

  • 登陆慧编程帐号 使用帐号云广播可以实现电脑对光环板的远程控制功能。使用帐号云广播需要登陆慧编程帐号。 启用上传模式 点击启用上传模式。 连接网络 1. 添加事件类积木 当光环板启动时。使用帐号云广播需要连接网络。添加Wi-Fi类积木 开始连接无线网络()密码(),输入附近Wi-Fi的名称和密码。 2. 网络连接成功后,我们需要一个信号来告诉我们网络连接成功。添加控制类积木 等待(),拖入Wi-Fi

  • 提示 视频 PPT 下载 背景介绍 Telnet 协议是一种应用层协议,使用于互联网及局域网中,使用虚拟终端机的形式,提供双向、以文字字符串为主的交互功能。属于 TCP/IP 协议族的其中之一,是 Internet 远程登录服务的标准协议和主要方式,常用于网页服务器的远程控制,可供用户在本地主机运行远程主机上的工作。 RT-Thread 目前支持的是 Telnet 服务器, Telnet 客户端连

  • 这是一个能够通过手机蓝牙控制远程计算机的J2ME开源项目。能控制大部分常用的程序如:windows media player、internet explorer、firefox。

  • 本文向大家介绍Python+OpenCV让电脑帮你玩微信跳一跳,包括了Python+OpenCV让电脑帮你玩微信跳一跳的使用技巧和注意事项,需要的朋友参考一下 前言 最近微信小游戏跳一跳大热,自己也是中毒颇久,无奈手残最高分只拿到200分。无意间看到教你用Python来玩微信跳一跳一文,在电脑上利用adb驱动工具操作手机,详细的介绍以及如何安装adb驱动可以去看这篇文章,这里就不再介绍了。但是原文