我正在用pyautoguilib 创建一个自动测试应用程序.我想使用typewrite方法将文本输入到表单中.但是我的一些输入字符串中包含unicode字符.例如:
Næst
根据文档typewrite只能按单字符键.所以它只是忽略了æ角色.
你能建议一些简单的解决方法吗?
Luc*_*nça 11
我知道这个帖子很老了,但是为了这个话题,我设法用一个更简单的方式使用pyperclip来解决它.
而不是试图让pyautogui用特殊字符键入单词,使用paperclip复制它,然后让pyautogui按"Ctrl + v".
例如:
import pyautogui
import pyperclip
pyperclip.copy("It's leviOsa, not lêvioçÁ!")
pyautogui.hotkey("ctrl", "v")
Run Code Online (Sandbox Code Playgroud)
找到一个很简单的。
在 Mac 和 Linux 中,可以使用十六进制代码输入 unicode 字符。维基百科上有一篇关于这一点的文章。我正在为 Mac 编写程序,因此我在键盘设置中启用了 Unicode Hex 输入并编写了以下代码:
def type_unicode(word):
for c in word:
c = '%04x' % ord(c)
pyautogui.keyDown('optionleft')
pyautogui.typewrite(c)
pyautogui.keyUp('optionleft')
Run Code Online (Sandbox Code Playgroud)