Python实战-使用微信遥控你的电脑
生活随笔
收集整理的這篇文章主要介紹了
Python实战-使用微信遥控你的电脑
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
學(xué)習(xí) Python 最好的方法,就是使用它,使用它來解決問題,這種正向激勵(lì)會(huì)讓你堅(jiān)持不斷的深入研究,進(jìn)而在 Python 的道路上投入一萬小時(shí),從而成為 Python 大師。 這里再宣傳下一萬小時(shí)定律: “人們眼中的天才之所以卓越非凡,并非天資超人一等,而是付出了持續(xù)不斷的努力。 1萬小時(shí)的錘煉是任何人從平凡變成世界級(jí)大師的必要條件。 ”他將此稱為“一萬小時(shí)定律”。 現(xiàn)在都是快節(jié)奏的辦公生活,大家都是同時(shí)使用手機(jī)和電腦,這就免不了使用微信與電腦之間相互傳遞文件,想一想你使用過多少次文件傳輸助手? 當(dāng)你在電腦前時(shí),手機(jī)與電腦之間相互傳文件都非常簡(jiǎn)單。 當(dāng)你不在電腦前呢? 比如你正在開會(huì),突然有個(gè)緊急電話讓你把xx文件發(fā)給xx; 正在會(huì)議室討論需求,卻想看下電腦中的一個(gè)文件; 或者正在外面吃飯,想看下電腦上跑的程序運(yùn)行完沒有,想到電腦還沒有關(guān)機(jī),想讓它關(guān)機(jī)。 解決這些問題,使用 Python 的話,只需要通過一個(gè) wxpy 模塊就可以輕松實(shí)現(xiàn),小白也完全可以自已定制,非常方便。 話不多說,先看個(gè)視頻。 視頻演示: 使用手機(jī)上的【文件傳輸助手】來控制【登陸微信網(wǎng)頁版】的電腦。 原理非常簡(jiǎn)單,就是使用手機(jī)發(fā)送消息到網(wǎng)頁版微信,網(wǎng)頁版微信收到消息后執(zhí)行相應(yīng)的任務(wù),然后把結(jié)果返回給手機(jī)端,由于網(wǎng)頁版微信在電腦端登陸,因此可以控制電腦。 這個(gè)邏輯同樣適用于郵件,或者其他可以編程控制的通訊工具,由于微信的使用率最高,也最方便,因此這里選取微信做為樣例。
def?wechatController(msg):
???? '''
????實(shí)現(xiàn)微信控制電腦功能的函數(shù)
????:param?msg:
????:return:
????'''
???? if?msg.text? in?[ "help", "幫助", "怎么用"]:
???????? return? "可發(fā)送:\n!截圖\n!拍照\(chéng)n!看目錄?路徑\n!傳文件?文件名\n!關(guān)機(jī)\n!cmd命令"
???? if?msg.text.startswith( "!")? or?msg.text.startswith( "!"):
????????command?=?msg.text.replace( "!", "").replace( "!", "")
????????logger.info( f"將執(zhí)行命令:{command}")
???????? if?command?==? "關(guān)機(jī)":
????????????process?=?subprocess.run( "shutdown?-s?-t?0",shell= True,stdout=subprocess.PIPE)
???????????? return?process.stdout.decode( "gbk")
???????? elif?command?==? "拍照":
????????????os.chdir(org_path)
????????????cap?=?cv2.VideoCapture( 0)
????????????ret,?img?=?cap.read()
????????????cv2.imwrite( "capture.jpg",?img)
????????????cap.release()
????????????bot.file_helper.send_image( "capture.jpg")
???????? elif?command?==? "截圖":
????????????os.chdir(org_path)
????????????process?=?subprocess.run( "nircmd?savescreenshot?capture_screen.png",shell= True,stdout=subprocess.PIPE)
????????????bot.file_helper.send_image( "capture_screen.png")
???????????? return?process.stdout.decode( "gbk")
???????? elif?command.startswith( "看目錄"):
????????????dir?=? ""
????????????dir?=?command.replace( "看目錄", "")
????????????print(dir)
???????????? if?dir?!=? "":
????????????????os.chdir(dir)
????????????????process?=?subprocess.run( "dir",?shell= True,stdout=subprocess.PIPE)
???????????????? return?process.stdout.decode( "gbk")
???????? elif?command.startswith( "傳文件"):
????????????dir?=? ""
????????????dir?=?command.replace( "傳文件", "")
???????????? if?dir?!=? "":
????????????????bot.file_helper.send_file(dir)
???????? else:
????????????os.chdir(org_path)
????????????process?=?subprocess.run(command,shell= True,stdout=subprocess.PIPE)
???????????? return?process.stdout.decode( "gbk")
代碼還有一些其他功能函數(shù),比如你可以和自己聊天,記錄所有收到的消息到日志,防止撤回,監(jiān)控程序使用的內(nèi)存等信息,參考 wxpy 的文檔來定制你的需求吧。
def?chat_to_self(msg):
???? '''
????自己和自己聊天
????:param?msg:
????:return:
????'''
????Tuling.do_reply(msg)
def?save_msg(msg):
???? '''
????記錄好友發(fā)送的所有消息,防止消息被撤回,保存在日志文件中
????:param?msg:
????:return:
????'''
????logger.info(msg)
完整代碼和一鍵運(yùn)行的文件,我已生成好,放在了百度網(wǎng)盤中,長(zhǎng)按下方二維碼,后臺(tái)回復(fù)關(guān)鍵詞 [ 微信遙控 ] 獲取。 無論何時(shí)何地,希望您能自由隨心訪問和管理您的電腦。 (完)
公眾號(hào) somenzz 專注于Python技術(shù)分享 每周五發(fā)車 歡迎訂閱、在看、轉(zhuǎn)發(fā)
使用到的工具 wxpy:
官方鏈接: https://github.com/youfou/wxpy wxpy 是一個(gè)第三方庫(kù),我們叫它微信機(jī)器人,是最優(yōu)雅的微信個(gè)人號(hào) API。 說的簡(jiǎn)單點(diǎn),就是一個(gè)微信網(wǎng)頁版的爬蟲,你也可以自己實(shí)現(xiàn)這樣的庫(kù)。 使用這個(gè)工具可以干嗎?控制路由器、智能家居等具有開放接口的玩意兒
運(yùn)行腳本時(shí)自動(dòng)把日志發(fā)送到你的微信
加群主為好友,自動(dòng)拉進(jìn)群中
跨號(hào)或跨群轉(zhuǎn)發(fā)消息
自動(dòng)陪人聊天
逗人玩
主要邏輯:
當(dāng)機(jī)器人文件傳輸助手收到文本消息時(shí),判斷是否是 ! 開頭,如果是,則執(zhí)行相應(yīng)的任務(wù)并返回響應(yīng)信息。def?wechatController(msg):
???? '''
????實(shí)現(xiàn)微信控制電腦功能的函數(shù)
????:param?msg:
????:return:
????'''
???? if?msg.text? in?[ "help", "幫助", "怎么用"]:
???????? return? "可發(fā)送:\n!截圖\n!拍照\(chéng)n!看目錄?路徑\n!傳文件?文件名\n!關(guān)機(jī)\n!cmd命令"
???? if?msg.text.startswith( "!")? or?msg.text.startswith( "!"):
????????command?=?msg.text.replace( "!", "").replace( "!", "")
????????logger.info( f"將執(zhí)行命令:{command}")
???????? if?command?==? "關(guān)機(jī)":
????????????process?=?subprocess.run( "shutdown?-s?-t?0",shell= True,stdout=subprocess.PIPE)
???????????? return?process.stdout.decode( "gbk")
???????? elif?command?==? "拍照":
????????????os.chdir(org_path)
????????????cap?=?cv2.VideoCapture( 0)
????????????ret,?img?=?cap.read()
????????????cv2.imwrite( "capture.jpg",?img)
????????????cap.release()
????????????bot.file_helper.send_image( "capture.jpg")
???????? elif?command?==? "截圖":
????????????os.chdir(org_path)
????????????process?=?subprocess.run( "nircmd?savescreenshot?capture_screen.png",shell= True,stdout=subprocess.PIPE)
????????????bot.file_helper.send_image( "capture_screen.png")
???????????? return?process.stdout.decode( "gbk")
???????? elif?command.startswith( "看目錄"):
????????????dir?=? ""
????????????dir?=?command.replace( "看目錄", "")
????????????print(dir)
???????????? if?dir?!=? "":
????????????????os.chdir(dir)
????????????????process?=?subprocess.run( "dir",?shell= True,stdout=subprocess.PIPE)
???????????????? return?process.stdout.decode( "gbk")
???????? elif?command.startswith( "傳文件"):
????????????dir?=? ""
????????????dir?=?command.replace( "傳文件", "")
???????????? if?dir?!=? "":
????????????????bot.file_helper.send_file(dir)
???????? else:
????????????os.chdir(org_path)
????????????process?=?subprocess.run(command,shell= True,stdout=subprocess.PIPE)
???????????? return?process.stdout.decode( "gbk")
代碼還有一些其他功能函數(shù),比如你可以和自己聊天,記錄所有收到的消息到日志,防止撤回,監(jiān)控程序使用的內(nèi)存等信息,參考 wxpy 的文檔來定制你的需求吧。
def?chat_to_self(msg):
???? '''
????自己和自己聊天
????:param?msg:
????:return:
????'''
????Tuling.do_reply(msg)
def?save_msg(msg):
???? '''
????記錄好友發(fā)送的所有消息,防止消息被撤回,保存在日志文件中
????:param?msg:
????:return:
????'''
????logger.info(msg)
完整代碼和一鍵運(yùn)行的文件,我已生成好,放在了百度網(wǎng)盤中,長(zhǎng)按下方二維碼,后臺(tái)回復(fù)關(guān)鍵詞 [ 微信遙控 ] 獲取。 無論何時(shí)何地,希望您能自由隨心訪問和管理您的電腦。 (完)
公眾號(hào) somenzz 專注于Python技術(shù)分享 每周五發(fā)車 歡迎訂閱、在看、轉(zhuǎn)發(fā)
總結(jié)
以上是生活随笔為你收集整理的Python实战-使用微信遥控你的电脑的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中国广电已拥有最多的4G、5G基站,中国
- 下一篇: 计算机二级ms考试知识点,计算机二级Ms