【问题标题】:Pyautogui.press() not working in Chrome FlashPyautogui.press() 在 Chrome Flash 中不起作用
【发布时间】:2019-08-08 02:04:02
【问题描述】:

我正在使用 pyautogui 库。当我调用 pyautogui.press() 时,它没有在 Chrome Flash 播放器中注册点击。我该如何克服这个问题?

import pyautogui
pyautogui.press('right')

这是我使用的基本代码,它适用于文本编辑器和 Chrome 内部,但不适用于 chrome 的 Flash 播放器。

我正在使用它的网站是http://www.tetrisfriends.com/games/Sprint5P/game.php,我想在其中自动化积木的移动。谢谢。

【问题讨论】:

  • 浏览器中的 Flash 内容必须具有 focus 才能响应键盘或点击。这意味着您必须先单击游戏区域的某个位置,然后再单击...在您的链接上,单击不是游戏的其他内容(例如:页面背景等)并尝试控制游戏(由于未集中注意力而没有响应)。使用点击不应该是pyautogui.click(some X pos, some Y pos)吗?在“点击”该游戏位置后,可能会尝试使用键盘“按下”...
  • 我没有尝试鼠标点击,但我已经通过在游戏区域中多次聚焦来清楚地检查键盘按下。当我将光标聚焦在文本编辑器中时,它可以正常工作并注册按键,但不在 Flash 播放器中。当我专注于 Flash 播放器时,击键将进入执行程序的 cmd。
  • 您现在是否在期望通过键盘控制之前尝试在游戏上单击鼠标? Flash Player 是一个插件(就像在浏览器内的层中运行的单独程序)。我的观点的例子:(不使用PyAutoGUI)只是去游戏,开始玩然后点击网页背景(蓝/白方块壁纸),注意到弹出说需要点击游戏来控制它吗?确保您的 PyAutoGUI 测试满足该要求...

标签: google-chrome flash pyautogui


【解决方案1】:

根据您发布的代码,最有可能发生的情况是 Flash 游戏没有焦点。您可以通过单击 Flash 游戏本身来解决此问题。请注意,浏览器有焦点可能不够,您还必须点击 Flash 应用程序本身。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-18
    • 1970-01-01
    • 2015-06-12
    • 2017-03-28
    • 1970-01-01
    • 2018-08-01
    相关资源
    最近更新 更多