Как элегантно использовать Python, не оглядываясь на красоту

Python

Сегодня кодировался на улице, а позади меня появилась красивая женщина, как мне грациозно на нее смотреть? Быстро взгляните и притворитесь, что делаете селфи на свой телефон? Мне, как программисту, приходит на ум использовать Python для удаленного управления собственным компьютером.

001.jpg

Картинка не имеет отношения к этой статье.

1. Технический принцип, в основном с использованием itchat. Код выглядит следующим образом, не много очень лаконично

#coding=utf-8

import itchat
import os
import time
import cv2
 
sendMsg =  "消息助手:暂时无法回复"
usageMsg = "使用方法:\n"\
           "1.运行CMD命令:cmd xxx (xxx为命令)\n" \
           "-例如关机命令(只适合 Windows):\ncmd shutdown -s -t 0\n" \
           "2.获取当前电脑用户:cap\n" \
           "3.启用消息助手:ast\n" \
           "4.关闭消息助手:astc"

flag = 1 #消息助手打开
nowTime = time.localtime()
 
@itchat.msg_register('Text')
def text_reply(msg):
    global flag
    message = msg['Text']
    fromName = msg['FromUserName']
    toName = msg['ToUserName']
 
    print("收到来自" + fromName +"的消息: \n" + message + "\n")

    if toName == "filehelper":
        if message == "cap":
            cap = cv2.VideoCapture(0)
            time.sleep(5) # 延迟5秒再读取
            ret, img = cap.read()
            cv2.imwrite("weixinTemp.jpg", img)        
            itchat.send('@img@%s'%u'weixinTemp.jpg', 'filehelper')
            cap.release()
            cv2.destroyAllWindows()
        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:
        print("回复给某人: " + message + "\n")
        itchat.send(sendMsg, fromName)
 
if __name__ == '__main__':
    itchat.auto_login(hotReload=True)
    itchat.send(usageMsg, "filehelper")
    itchat.run()

2. Запустите код

$ python wechat_remote_cap.py 
Getting uuid of QR code.
Downloading QR code.
Please scan the QR code to log in.

3. Используйте WeChat, чтобы отсканировать всплывающий QR-код и войти в свой веб-сайт WeChat (обратите внимание, что вы не можете одновременно войти в систему WeChat на стороне компьютера).

4. В ассистенте передачи файлов можно посмотреть полученную информацию

002.jpg

5. Посадите пользователя перед компьютером

Отправить шапку помощнику по передаче файлов

6. Используйте эту программу для выполнения некоторых командных строк

Например: отправить сообщение cmd ls помощнику по передаче файлов

7. Используйте эту процедуру для удаленного завершения работы

Только Windows. Командная строка Mac отличается, и вам нужно добавить sudo, а затем ввести пароль компьютера в терминале. Удаленное завершение работы Windows, отправьте следующее сообщение помощнику по передаче файлов cmd выключение -s -t 0

Удаленно выключите Mac и отправьте следующее сообщение помощнику по передаче файлов (mac запросит пароль компьютера) cmd sudo выключение -h +2

8. Резюме

В этой статье представлен метод использования Python для удаленного управления компьютером.Основная технология заключается в использовании itchat и opencv2.

Добро пожаловать, чтобы отсканировать код и подписаться на официальный аккаунт, каждый может общаться друг с другом.

0010.jpg