Windows
環境で再現しました。
USキーボード以外で発生する既知の不具合のようです。
Some characters are not working with German layout keyboard #46
:
はShift
キー入力不要なのにもかかわらず、Shift
+:
キーが送信され*
が入力されるようです。
上記URLと同様の手法にてpyautoguiを直接修正することで、とりあえず回避はできました。
~\pyautogui_pyautogui_win.py
Python
1def _keyDown(key):
2 # 略
3 needsShift = pyautogui.isShiftCharacter(key)
4
5 # 以下を追加
6 if key == '@': needsShift = False
7 if key == '^': needsShift = False
8 if key == ':': needsShift = False
9
10 """
11 # OLD CODE: The new code relies on having all keys be loaded in keyboardMapping from the start.
12 if key in keyboardMapping.keys():
13 # 略
テストソース
Python
1import pyautogui
2
3s = r'!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~'
4print(s)
5pyautogui.click(200, 200) # テキストエディタなどのウインドウ位置
6pyautogui.typewrite(s)
テキストエディタ画面の結果
!"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/06/12 06:32