[英]How to press a key in different program using Python through pycharm
我有一個始終打開的程序,我不時需要為它更新一些背景文件,但是我需要在程序中按一個鍵來刷新它。 我正在尋找一種在更新腳本完成后自動刷新的方法。
我需要做什么:
1 - go 到我電腦上的打開程序,稱為
Program
2 - 按
ctrl + shift + r
執行刷新
這是我嘗試過的腳本,但在 Pycharm 中沒有這樣的運氣:
import pyautogui
from time import sleep
import subprocess
p = subprocess.Popen(r'C:\Users\xxx\Desktop\xxx\Program.exe')
pyautogui.keyDown("ctrl")
pyautogui.keyDown("shift")
pyautogui.press("r")
pyautogui.keyUp("ctrl")
pyautogui.keyUp("shift")
p.kill()
該腳本將我留在 pycharm 中,並將我發送到查找和替換任務。 有任何想法嗎? 謝謝!
有一個簡單的繞過方法,讓你的程序休眠幾秒鍾,直到你手動關注 window。
在這里,我在 StachOverflow 上試過這個,它奏效了!
import pyautogui
from time import sleep
sleep(5)
pyautogui.keyDown("ctrl")
pyautogui.keyDown("shift")
pyautogui.press("r")
pyautogui.keyUp("shift")
pyautogui.keyUp("ctrl")
運行代碼后,我切換到選項卡並等待。 很快網頁就刷新成功了!
注意:這只是一個小旁路。 我建議您按照 Grismar 的建議了解如何讓其他window成為焦點
對我有用的答案是讓 window 成為焦點:
然后運行以下命令:
pyautogui.keyDown("ctrl")
pyautogui.keyDown("shift")
pyautogui.press("r")
pyautogui.keyUp("ctrl")
pyautogui.keyUp("shift")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.