我已经在Python中开发了一个Collab笔记本,它打算模拟键盘键的按压,以便玩一个游戏,作为强化学习的一部分,它将监视这个游戏。我尝试过使用一些建议(如pyautogui、Quartz等),但我是,甚至无法导入这些库。
例如,当我安装pyautogui和Xlib并尝试导入pyautogui时,它给出了KeyError:'DISPLAY'。但是,从终端运行时,pyautogui在我的本地机器上工作得很好。
类似地,在将pynput安装到Collab笔记本之后,当我尝试导入它时,它显示了DisplayNameError:错误的显示名“”,对此我一无所知。
我甚至尝试了getkey模块,但是从getkey导入getkey,键,但是没有成功。
有什么办法让这件事奏效吗?另外,请任何人解释一下,为什么这些模块在我的本地硬件上工作得很好,而在Google上却没有?此外,请提出任何替代这些模块,可以很好地工作在Collab?
非常感谢。
发布于 2018-12-26 02:41:38
当您在本地机器上使用这样的模块时,它会与硬件连接,以获取鼠标/键盘/监视器事件。
但是,Google是在Google中的一个机器实例上运行的。Python无法访问您的键盘/监视器。您只通过浏览器与Colab交互。
另一种方法是使用JavaScript获取这些事件并将其传递给Python。我做了一个例子,如何连接从JS到PY作为一个要点。
https://gist.github.com/korakot/d10a43490f3da17d4915cdc1f200b180
我警告你,这很难做到。您必须实现JS和PY之间来回传递操作。
我建议你用你的本地机器来代替。如果您喜欢Colab,可以使用本地运行时。
https://research.google.com/colaboratory/local-runtimes.html
发布于 2020-06-05 12:17:17
尝试将键盘模块下载到计算机上。然后从您的计算机转到insert> snippets>上传。希望这有所帮助:)
https://stackoverflow.com/questions/53919284
复制相似问题