1. 程式人生 > >Python 學習筆記10 - 實戰:微信遙控電腦

Python 學習筆記10 - 實戰:微信遙控電腦

10、Python實戰:微信遙控電腦

1 微信遠控:Python控制電腦的兩種方法

1-1 課程介紹

  微信控制電腦

  網頁控制電腦

  遠端控制軟體

 

1-2 命令提示符 CMD 入門

基本的CMD命令介紹

 >dir

 >time

 >systeminfo

  >pingwww.baidu.com

 >tree Music

 

使用CMD執行檔案– shift+右擊,選擇在此處開啟命令視窗

  >notepad

 >calc

使用CMD命令關機

 >shutdown –s –t 3600 –c “yuxiang”

  >shutdown–a //取消關機

 

1-3 Python執行 CMD 命令

os.system(‘xxx’)

subprocess.Popen(‘xxx', shell=True, stdout=subprocess.PIPE,stderr=subprocess.STDOUT)

 

 

 


 

例項:實現在本地修改配置檔案,讓python執行CMD 命令

程式碼:

  # coding=utf-8
import subprocess
import os
import time


os.system('ping www.baidu.com')

a = subprocess.Popen('dir', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)

b = a.stdout.readlines()
for i in b:
    print i

#執行這個程式之前記得按照視訊把conf.txt改過來哦,否則會報錯。
while 
True:     f = open('conf.txt', 'r')     content = f.read()     os.system(content)     time.sleep(5)

 

 

 


 

1-4 Python呼叫 Win API

win32api安裝與文件

•              安裝檔案下載:

                     http://sourceforge.net/projects/pywin32/files/pywin32/

•              官方文件:

                     http://docs.activestate.com/activepython/2.7/pywin32/win32api.html

 

Python呼叫API

  Beep

    人耳可以聽到聲音的頻率是20-22000Hz

  MessageBox

   

  ShellExecute

 

  程式碼:

  #-*-coding:utf8-*-
import time
import win32api

win32api.Beep(8000,3000)


win32api.ShellExecute(0, 'open', r'C:\Users\Administrator\PycharmProjects\WeChatControlPC\music\river flows in you.mp3', '', '', 1)


while True:
    f = open('conf.txt', 'r')
    content = f.read().split('#')
    if content[0] != '0':
        win32api.MessageBox(0, content[1], content[2])
    time.sleep(5)

 

 


 

2 微信遠控:讓微信控制電腦

2-1 微信控制電腦原理

人      命令 電腦

媒介– 網路- 郵箱

 

2-2 新浪郵箱的設定

SMTP – 簡單郵件傳輸協議– 傳輸給其他人

 

POP3 – 郵局協議第三個版本– 接受到本地

 

開啟SMTP POP3

 

2-3 Python收發郵件

1)Python傳送郵件

msg = MIMEText(body,'plain','utf-8')

msg['Subject'] = subject

msg['from'] = self.username

handle.sendmail(username1, username2, msg.as_string())

變數handle是什麼?

 

2)Python接收郵件

receive = pp.list()

mailBody = pp.retr(len(ret[1]))

變數pp是什麼?

 

3)Python解析郵件

通過除錯分析郵件內容

正則表示式提取命令

 

2-4 微信控制電腦的實現

•              程式的實現

•              程式與資料的分類

 

2-5 沙盤化的微信遠控

•              程式生成程式

•              Python執行Python

 

程式與資料分離的思想