end0tknr's kipple - web写経開発

太宰府天満宮の狛犬って、妙にカワイイ

pyautogui & pywinauto for python で win10 proxy設定画面を操作

当初、コマンドラインで変更したかったのですが、 プロキシ設定画面の「セットアップ スクリプトを使う」のオン/オフは コマンドラインではできないようでしたので、以下としました

#!python
# -*- coding: utf-8 -*-
import pyautogui
import pywinauto
import time

def main():
    # proxy設定画面を起動
    pywinauto.keyboard.send_keys("{VK_LWIN down}r{VK_LWIN up}")
    pywinauto.keyboard.send_keys("ms-settings:network-proxy{ENTER}")
    time.sleep(2)

    # proxy設定画面の状態を確認
    img_path = "img_dev/" + "proxy_script_on.png"
    win_pos = pyautogui.locateOnScreen(img_path, confidence=0.915)

    pywinauto.keyboard.send_keys("{TAB}")
    pywinauto.keyboard.send_keys("{SPACE}")
    # setup script on->off
    if win_pos:
        print("ON->OFF")
        pywinauto.keyboard.send_keys("{TAB}")
    # off->on
    else:
        print("OFF->ON")
        pywinauto.keyboard.send_keys("{TAB}{TAB}")
        pywinauto.keyboard.send_keys("{ENTER}")
        
    # proxy設定画面を閉じる
    pywinauto.keyboard.send_keys("%{F4}")

if __name__ == '__main__':
    main()