PyautoGuiの一般的なチュートリアル(1つで十分です)


私はたくさんのPyautogui、本質の要約を見てきました、ここにあなたが望むすべてがあります、1つで十分です!

1.事前パラメータ

  • フェイルセーフ機能

# 默认这项功能为True, 这项功能意味着:当鼠标的指针在屏幕的最坐上方,程序会报错;目的是为了防止程序无法停止
pyautogui.FAILSAFE =False  
  • 一時停止機能

# 意味着所有pyautogui的指令都要暂停一秒;其他指令不会停顿;这样做,可以防止键盘鼠标操作太快;
pyautogui.PAUSE = 1    

2.マウスパラメータ

2.1画面解像度を取得する

print(pyautogui.size())   # 返回所用显示器的分辨率; 输出:Size(width=1920, height=1080)
width,height = pyautogui.size()
print(width,height)  # 1920 1080

2.2マウスの動きのイベント

  • 指定した場所に移動します
# 将鼠标移动到指定的坐标;duration 的作用是设置移动时间,所有的gui函数都有这个参数,而且都是可选参数;
# 向右移动100px,向下移动500px, 这个过程持续 1 秒钟;
pyautogui.moveTo(100,300,duration=1)   
  • マウスの位置
print(pyautogui.position())   # 得到当前鼠标位置;输出:Point(x=200, y=800)

2.3マウスクリックイベント

  • マウスクリック
# 点击鼠标
pyautogui.click(10,10)   # 鼠标点击指定位置,默认左键
pyautogui.click(10,10,button='left')  # 单击左键
pyautogui.click(1000,300,button='right')  # 单击右键
pyautogui.click(1000,300,button='middle')  # 单击中间
  • ダブルクリック
pyautogui.doubleClick(10,10)  # 指定位置,双击左键
pyautogui.rightClick(10,10)   # 指定位置,双击右键
pyautogui.middleClick(10,10)  # 指定位置,双击中键
  • マウスをクリックして離します
pyautogui.mouseDown()   # 鼠标按下
pyautogui.mouseUp()    # 鼠标释放
  • マウスコントロールドラッグイベント
# 拖动到指定位置
# 将鼠标拖动到指定的坐标;duration 的作用是设置移动时间,所有的gui函数都有这个参数,而且都是可选参数
pyautogui.dragTo(100,300,duration=1)   

# 按方向拖动
# 向右拖动100px,向下拖动500px, 这个过程持续 1 秒钟
pyautogui.dragRel(100,500,duration=4)   # 第一个参数是左右移动像素值,第二个是上下
  • マウスホイール
# 控制鼠标滚动的函数是scroll(), 传入一个整数的参数,说明向上或向下滚动多少个单位;单位根据操作系统不同而不同
pyautogui.scroll(300)  # 向下滚动300个单位;

3つ、キーボードイベント

3.1キーボード入力機能

pyautogui.keyDown():キー押下をシミュレートします;:
pyautogui.keyUp()キーリリースをシミュレートします
pyautogui.press();:#キー押下をシミュレートするためにkeyDown()&keyUp()を呼び出すことです;:
pyautogui.typewrite('this',0.5)最初のパラメーターは入力コンテンツであり、2番目のパラメーターは各文字間の間隔時間です;
pyautogui.typewrite(['T','h','i','s']):typewrite 1文字のリストを渡すこともできます。

  • キーボードイベント
pyautogui.keyDown('shift')    # 按下shift
pyautogui.press('4')    # 按下 4
pyautogui.keyUp('shift')   # 释放 shift
  • 出力が遅い
pyautogui.typewrite('$*……%……¥', 0.5)

3.2キーボードの特殊シーケンス出力

pyautogui.typewrite(['T','i','s','left','left','h',])   # 输出:This

3.3特殊キー

キーボード文字列 説明
入力(または戻るまたは\ n) キャリッジリターン
ESC ESC
shiftleft、shiftright 左右のShiftキー
オルタナ右翼、オルタナ右翼 左右のALTキー
ctrlleft、ctrlright 左右のCTRLキー
タブ(\ t) TAB键
バックスペース、削除 BACKSPACE、DELETE键
pageup、pagedown PAGEUP和ページDown键
家、終わり HOMEキーとENDキー
上下左右 矢印キー
f1、f2、f3..。f12 F1…….F12キー
volumemute、volumedown、volumeup 音が大きくなり、静かになります(一部のキーボードはそうではありません)
一時停止 一時停止キー、一時停止キー
キャップスロック CAPSLOCKキー
numlock NUMLOCKキー
スクロールロック SCROLLLOCKキー
インサート INSERTキー
printscreen PRINTSCREENキー
winleft、winright Win键(windows )
コマンド コマンドキー(Mac OS X)
オプション オプション(Mac OS X)

3.4ショートカットキー

  • コピーショートカットキーctrl + cをシミュレートする必要がある場合、前の方法を使用すると、コードは次のようになります。
pyautogui.keyDown('ctrl')
pyautogui.keyDown('c')
pyautogui.keyUp('c')
pyautogui.keyUp('ctrl')
  • 最適化
pyautogui.hotkey('ctrl','c')

4、画面処理

4.1スクリーンショット

  • pyautoguiは、枕画像オブジェクトを返すことができるメソッドscreenshot()を提供します

  • 共通パラメータ

im = pyautogui.screenshot() # 返回屏幕的截图,是一个Pillow的image对象
im.getpixel((500, 500)) # 返回im对象上,(500,500)这一点像素的颜色,是一个RGB元组
pyautogui.pixelMatchesColor(500,500,(12,120,400)) # 是一个对比函数,对比的是屏幕上(500,500)这一点像素的颜色,与所给的元素是否相同;
  • スクリーンショット操作
im = pyautogui.screenshot()
im.save('屏幕截图.png')

おすすめ

転載: blog.csdn.net/weixin_38640052/article/details/112387653