我正在用pyautogui
lib創建一個自動測試應用程序。我想用typewrite
方法將文本輸入到表單中。但是我的一些輸入字符串中有unicode字符。例如:用pyautogui輸入unicode字符串
Næst
根據文檔typewrite
只能按單字符鍵。所以它只是忽略æ
角色。
你能提供一些簡單的解決方法嗎?
我正在用pyautogui
lib創建一個自動測試應用程序。我想用typewrite
方法將文本輸入到表單中。但是我的一些輸入字符串中有unicode字符。例如:用pyautogui輸入unicode字符串
Næst
根據文檔typewrite
只能按單字符鍵。所以它只是忽略æ
角色。
你能提供一些簡單的解決方法嗎?
找到一個很簡單的。
在Mac和Linux中,可以使用十六進制代碼輸入unicode字符。關於那個有article on wikipedia。我寫我的程序適用於Mac,所以我支持Unicode十六進制輸入在我的鍵盤設置,並寫了這個代碼:
def type_unicode(word):
for c in word:
c = '%04x' % ord(c)
pyautogui.keyDown('optionleft')
pyautogui.typewrite(c)
pyautogui.keyUp('optionleft')
我知道這個線程是老了,但話題的緣故,我設法得到解決它以更簡單的方式使用pyperclip。
而不是試圖讓pyautogui鍵入帶有特殊字符的單詞,使用回形針將其複製,然後讓pyautogui按「Ctrl + v」。
例如:
import pyautogui
import pyperclip
pyperclip.copy("ãêíØ")
pyautogui.hotkey("ctrl", "v")
在Max OS X,我不得不貼線改變爲'pyautogui.hotkey( 「命令」, 「V」)' – karlo