pyautogui typewrite() 写入 shell 而不是单击输入/文档

我正在关注使用 Python 自动化无聊的东西的第 18 章。我在 OS X 上。

我正在尝试使用pyautogui单击文本输入或文本文档,然后输入文本。

我在 shell 中输入以下内容((370, 80)是我的 Chrome 地址栏的坐标):

pyautogui.click(370,80); pyautogui.typewrite('Hello world!')

click()似乎没有按预期工作。当我单击输入时,它会突出显示输入中的文本,但即使我在单击后手动输入,文本也会显示在 shell 中。请参阅以下运行上述行的结果的屏幕截图:

http://img4.mukewang.com/628c66ce0001dddc09190063.jpg

其他方法如positionmoveTomoveReldragTo正在按预期工作。

如果我time.sleep(5); pyautogui.typewrite('test')在线程休眠时运行并手动单击文本文档或输入,则会根据需要输入文本。

可能是什么问题?


千巷猫影
浏览 266回答 1
1回答

慕娘9325324

原来有一个与click()OSX 相关的错误。这是解决方案:打开__init__.pypyautogui 包目录中的文件(使用此答案查找 Python 包的位置。在第 510 行(在click()函数中),将第四个参数更改为platformModule._multiClick()from 3to clicks(无引号)。所以正确的调用是platformModule._multiClick(x, y, button, clicks)保存编辑的文件。有一个开放的 PR来解决这个问题。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python