【python】pyautoguiとは? pyautoguiの使い方(サンプルコード付き)と関数一覧

python
スポンサーリンク
スポンサーリンク

pyautoguiとは

pyautoguiとは、pythonのライブラリの一つで、主にブラウザや、パソコンの自動化するために使いますが、それだけでなく、これを使うことで、キーボード操作や、画面キャプチャなど、様々なことをすることができます。

Pythonを使えば、ほかにもいろいろできるので、興味がある方はぜひこの記事の最後の方の「Pythonはコードが書けると、超絶便利‼」のところをご覧ください‼‼

というわけで、今から先ほど説明したようなことができるpyautoguiの持ってる関数一覧を見ていきたいと思います!!

pyautoguiを使った超面白いプログラム‼‼

注意

この記事はpythonに関する記事なので、pythonのインストールは必須です。

まだPythonをインストールしていない方は、まず下の記事を読んで、pythonをインストールしてください。

初めに:

pyautoguiをインストールしていない方や、これを応用させたプログラムを見てみたいは下の記事を読んでください。(インストール方法も下のリンクに載っています。)

応用すれば、ブラウザの自動操作や、ブルートフォース攻撃などにも生かすことができるので、ぜひ、いろんな関数を使ってみてください。

python自動化を語るうえで絶対に必要な1冊だと思いますので、ぜひ、自動化を学んでみたいという方は、上のリンクをクリック‼‼

私のブログよりも、もっと面白いプログラムや、実用的なプログラムが載っていますので、ぜひどうぞ‼‼

予め言っておきますが、プログラムを書くときは、必ず「import pyautogui」と書いてからにしてください。

例えば、下のような感じ。

import pyautogui
for i in range(100):
    pyautogui.click(logScreenshot=True)

\満足度,利用者数ともに業界No.1‼ 完全オンライン完結‼/

キーボードを操作できる関数

関数および、操作や、簡単な実装は下の表を見てください。

関数操作簡単な書き方
pyautogui.press()キーボードの()を押すpyautogui.press(‘a’)
pyautogui.typewrite()キーボードの()を順番にタイピングpyautogui.typewrite(‘abc’)
pyautogui.hotkey()キーボードの()を同時押しするpyautogui.hotkey(‘a’,’b’,’c’)
pyautogui.keyDown()キーボードの()を押したままにするpyautogui.keyDown(‘a’)
pyautogui.keyUp()キーボードの()を離すpyautogui.keyUP(‘a’)

アルファベットや、数字では表せないキー

Enterキー‘enter’,’retuen’,’\n’
Escキー‘esc’
Shiftキー‘shiftleft’,’shiftright’
Altキー‘altleft’,’altright’
Ctrlキー‘ctrlleft’,’ctrlright’
Tabキー‘tab’,’\t’
Backspaceキー・Deleteキー‘backspace’,’delete’
PageUpキー・PageDownキー‘pageup’,’pagedown’
Homeキー・Endキー‘Home’,’end’
矢印キー(↑↓←→)‘up’,’down’,’left’,’right’
ファンクションキー‘f1′,’f2’,’f3’など
音量コントロールキー‘volumeup’,’volumedown’,’volumemute’
Pauseキー‘pause’
CapsLockキー‘capslock’
NumLockキー‘numlock’
ScrollLockキー‘scrolllock’
Insキー‘insert’
PrintScreenキー‘printscreen’
Winキー(Windowsのみ)‘winleft’,’winright’
Commandキー(Macのみ)‘command’
Optionキー(Macのみ)‘option’

このライブラリの弱点は「日本語入力することができない」というところにあります。なので、日本語で「か」と打ちたい場合は、日本語入力の状態で、「pyautogui.typewrite(‘ka’)」と書いて、実行するようにしましょう。

\満足度,利用者数ともに業界No.1‼ 完全オンライン完結‼/

マウスを操作できる関数

関数および、操作や、簡単な実装は下の表を見てください。

関数操作簡単な書き方
pyautogui.click()マウスを左クリックpyautogui.click(x=200, y=400, clicks=2, interval=3, button=’right’, duration=2, logScreenshot=False, _pause=3)
pyautogui.rightClick()マウスを右クリック上と同様
pyautogui.middleClick()マウス中央ボタンをクリックそのまま
pyautogui.doubleClick()マウスをダブルクリックそのまま
pyautogui.tripleClick()マウスをトリプルクリックそのまま
pyautogui.mouseDown()マウスボタンを押したままにするそのまま
pyautogui.mouseUp()
マウスボタンを離すそのまま
pyautogui.moveRel()マウス座標を(x,y)だけ移動するpyautogui.moveRel(200,400)
pyautogui.position()マウスの現在位置(x,y)を取得そのまま
  • x=クリックしたい位置のx座標
  • y=クリックしたい位置のy座標
  • button=クリックしたいボタン(left/right/middle)
  • clicks=クリックする回数
  • interval=クリックする間隔の秒数
  • pause=クリック後に一時停止する秒数
  • duration=何秒かけてその地点に移動するか
  • logScreenshot=処理が終わった後に、スクリーンショットを取るかどうか(Trueにすることで、)スクリーンショットを取ることができます。)

これらは、click()関数のみ使うことができます。

ちなみに、この関数はマウスがなくても使うことができます。

\満足度,利用者数ともに業界No.1‼ 完全オンライン完結‼/

画面を操作する関数

関数操作簡単な書き方
pyautogui.scroll()画面をスクロールそのまま
pyautogui.size()画面のサイズを取得そのまま
pyautogui.screenshot()画面のスクリーンショットを取得そのまま(さっきのlogScreenshotでもできます)
pyautogui.locateCenterOnScreen()画像とマッチする座標を画面上から取得pyautogui.locateCenterOnScreen(‘a.png’)
pyautogui.pause()PyAutoGUIの処理を一時停止するそのまま(さっきの_pauseでもできます。)

pyautogui.locateCenterOnScreen()の関数ときに使う写真は、実行するpythonのファイルと同じディレクトリに入れておきましょう。

プログラミングを勉強するならTechAcademy‼

皆さん、「プログラミングで実用的なものを作ってみたい」とか、「Webやフリーランスで短期間で副業収入得たいな」とか思ったことはありませんか。

でも、素人がやろうとしても難しすぎて、挫折してしまうことが多いです。

そんな時にお勧めしたいのが、利用者数,満足度ともに業界No.1のプログラミングスクール、Techacademyです‼

TechAcademyなら…

  • 他社とは比べ物にならない圧倒的コストパフォーマンス‼
  • 現役エンジニアによる徹底サポート初心者でも安心‼
  • 副業として稼げるまでのサポート保証付き‼‼
  • 期限がないから自分のペースでできる‼‼

さらに、TechAcademyでは20を超えるコース(初めての副業コース,Web開発,動画編集コース,ゲーム開発, エンジニア転職保証コース,スマホアプリ開発,Pythonコース,…)の中からあなたに合ったコースを自由に選択できます‼

住所,電話番号などの個人情報の登録は一切必要なし‼

終わりに

これらの関数を使えば、最初に言ったとおり、いろんなことを自動で行うことができます。ぜひ、使ってみてください。

タイピングに応用させるとこうなる↓

python自動化を語るうえで絶対に必要な1冊だと思いますので、ぜひ、自動化を学んでみたいという方は、上のリンクをクリック‼‼

私のブログよりも、もっと面白いプログラムや、実用的なプログラムが載っていますので、ぜひどうぞ‼‼(上のリンク)

ほかにも面白い記事がたくさんありますので、そちらのほうも見ていただければ、光栄です。

それでは、次の記事で!

今回参考にさせていただいたページ:Pythonでマウスやキーボードを操作できるPyAutoGUIによる自動操作マニュアル

↑よりかは、この記事のほうが内容も詳しいし、わかりやすいと思います。

プロフィール

この記事を書いた人

このブログの情報が少しでも役に立てれば嬉しいです。