【最短5分】PyAutoGUIで繰り返し実行(loop)を実現する2つの方法

 

★悩み★
・PyAutoGUIである処理の繰り返し実行(loop)ってできる?
・forとwhileを使って、PyAutoGUIで繰り返し実行できるのかな。
・繰り返し実行(loop)をPyAutoGUIで実現する方法を知りたい。



こういった「悩み」に答えます。
 

★本記事の内容★
① PyAutoGUIとは
➁ PyAutoGUIで繰り返し実行(loop)を実現する方法【forとwhileを利用】
➂ forで繰り返し実行(loop)する方法
④ whileで繰り返し実行(loop)する方法



これからご紹介する「PyAutoGUIで繰り返し実行(loop)を実現する2つの方法」を実践したことで、1時間くらいで「PyAutoGUIでWebブラウザの操作を繰り返し実行」するプログラムを作れました(下の動画参照)。
 

PyAutoGUIでWebブラウザ操作を繰り返し実行した例



記事の前半では「PyAutoGUIとは?」や「PyAutoGUIのインストール方法」を解説します。

記事の後半では「PyAutoGUIでfor文を使って繰り返し実行する方法」から「while文を使ってループ処理を実現する方法」までを紹介します。
  

この記事を読み終えることで、「PyAutoGUIでGUI操作を繰り返し実行」できる状態になります。

 

 


 

PyAutoGUIとは?


「PyAutoGUIとは?」/「PyAutoGUIの特徴」/「PyAutoGUIのユースケース(利用場面)」に関しては、以下の記事をご覧ください。
>> 【要点】PyAutoGUIとは?初心者向けに特徴から使い方までを図解

 

また、PyAutoGUIのインストール方法に関しては、以下の記事をご覧ください。
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順
>> 【最短5分】UbuntuにPyAutoGUIをインストールする手順
>> 【最短5分】MacにPyAutoGUIをインストールする手順

 

ウェブブラウザなどの画面操作を自動化をしたい場合、PyAutoGUIを使って無料で実現できます。
まずは、PyAutoGUIで「繰り返し実行(loop)」を実現する方法から紹介しますね。


 

PyAutoGUIで繰り返し実行(loop)を実現する方法


「PyAutoGUIで繰り返し実行(loop)を実現する方法」に関してご紹介します。
 

★PyAutoGUIで繰り返し実行(loop)を実現する方法と補足★
・PyAutoGUIで繰り返し実行(loop)を実現する方法
・forとwhileの使い分け



以降で、上記「PyAutoGUIで繰り返し実行(loop)を実現する方法と補足」の各項目に関してご説明します。
 

PyAutoGUIで繰り返し実行(loop)を実現する方法

「PyAutoGUIで繰り返し実行(loop)を実現する方法」に関して解説します。
 

PyAutoGUIで繰り返し実行(loop)を実現したい場合、2つの方法があります。



PyAutoGUIで繰り返し実行(loop)を実現したい場合、以下の「for」または「while」を使います。
 

★PyAutoGUIで繰り返し実行(loop)を実現する方法★
・forを使う
・whileを使う



「for」と「while」の構文や使い方に関しては、本記事の後半で解説します。
 

以上が、「PyAutoGUIで繰り返し実行(loop)を実現する方法」となります。
 

forとwhileの使い分け

「forとwhileの使い分け」に関して解説します。
 

プログラムの可読性から、forとwhileを使い分ける方法を説明しますね。



繰り返し実行(loop)を実現できる「for」は、以下の特徴があります。
 

★forの特徴★
「値を格納した配列」、もしくは、「繰り返す回数」を指定して、繰り返し実行(loop)の回数を決定する。

 

また、繰り返し実行(loop)を実現できる「while」は、以下の特徴があります。
 

★whileの特徴★
繰り返し実行(loop)の回数は、「条件を満たすまで」となる。



上記の「forの特徴」と「whileの特徴」から、以下の使い分けをオススメします。
 

★forとwhileの使い分け★
繰り返す回数が決まっている場合、「for」を利用する。
繰り返す回数が決まっていない場合、「while」を利用する。

 

少し頑張れば、whileでも「繰り返す回数を指定した繰り返し実行(loop)」を記述できます。
ただし、プログラムの可読性が悪くなるためオススメはできません。



以上が、「forとwhileの使い分け」となります。
 

PyAutoGUIで繰り返し実行(loop)を実現したい場合、「for」または「while」を使いましょう。


 

forで繰り返し実行(loop)する方法


「forで繰り返し実行(loop)する方法」に関してご紹介します。
 

★forで繰り返し実行(loop)を実現★
① forの構文を解説
➁ PyAutoGUIでforによる繰り返し実行するプログラムを作成



PyAutoGUIで「for」を使うことにより、ある処理を繰り返し実行できます。
 

上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年9月1日
動作確認済み環境:Windows Pro11



以降で、上記の各項目に関してご説明します。
 

forの構文を解説

「forの構文を解説」に関して説明します。
 

PyAutoGUIで繰り返しを伴う処理を実現したい場合、1つの方法として「forの利用」があります。



PyAutoGUIで「繰り返し実行」の処理を作りたい場合、以下の「for」を使います。
 

★forのリファレンス★
処理:指定した回数だけ、以降の処理を繰り返し実行させる
使い方:for <変数> in <回数>



「for」を使った繰り返し実行(loop)の書き方としては、以下の4パターンがあります。
 

★forのパターン①:指定した回数だけ繰り返す★
・書き方
 for <変数> in range(<回数>):
  繰り返したい処理
・例
 for loop_count in range(5):
  print(loop_count)
・実行結果
 「0」「1」「2」「3」「4」と順番に表示される。

  

★forのパターン➁:リストを使って繰り返す★
・書き方
 for <変数> in <リスト>
  繰り返したい処理
・例
 items = [“apple”, “orange”]
 for item in items:
  print(item)
・実行結果
 「apple」「orange」と順番に表示される。

  

★forのパターン➂:繰り返しの途中で抜ける★
・書き方
 for <変数> in range(<回数>):
  繰り返したい処理
  if 条件:
   break
・例
 for loop_count in range(5):
  print(loop_count)
  if loop_count == 2:
   break
・実行結果
 「0」「1」「2」と順番に表示される。

  

★forのパターン④:条件を満たすとき処理をスキップする★
・書き方
 for <変数> in range(<回数>):
  if 条件:
   continue
  繰り返したい処理
・例
 for loop_count in range(5):
  if loop_count == 2:
   continue
  print(loop_count)
・実行結果
 「0」「1」「3」「4」と順番に表示される。

  

以上が、「forの構文を解説」となります。
 

PyAutoGUIでforによる繰り返し実行するプログラムを作成

「PyAutoGUIでforによる繰り返し実行するプログラムを作成」に関して解説します。
 

PyAutoGUIでforを使って、繰り返し実行(loop)するプログラムを作成してみましょう。



以下のプログラムを作成し、「pyautogui-for-loop.py」というファイル名で保存してください。
 

import pyautogui

for loop_count in range(5):
  pyautogui.moveTo(100,0, 3)
  pyautogui.moveTo(400,400, 3)

print('forを使って繰り返し処理を実施しました。')



続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。

python pyautogui-for-loop.py



コマンド実行後、下の動画のように「マウス移動操作が繰り返し実行された」場合、「正常に作成したプログラムを実行できた」と判断できます。
 

PyAutoGUIでforを使ったloop事例


ちなみに、PyAutoGUIでマウス操作を自動化したい方には、以下の記事がオススメです。
>> 【最短5分】PyAutoGUIで多用するマウス操作の自動化7選
 


以上が、「PyAutoGUIでforによる繰り返し実行するプログラムを作成」となります。
 

PyAutoGUIで「for」を使うことで、繰り返し実行(loop)を作ることができます。


 

whileで繰り返し実行(loop)する方法


「whileで繰り返し実行(loop)する方法」に関してご紹介します。
 

★whileで繰り返し実行(loop)を実現★
① whileの構文を解説
➁ PyAutoGUIでwhileによる繰り返し実行するプログラムを作成



PyAutoGUIで「while」を使うことにより、ある処理を繰り返し実行できます。
  

上記の各手順は、以下の日時と環境で動作確認済みです。
動作確認済み日時:2022年9月1日
動作確認済み環境:Windows Pro11



以降で、上記の各項目に関してご説明します。
 

whileの構文を解説

「whileの構文を解説」に関して説明します。
 

PyAutoGUIで繰り返しを伴う処理を実現したい場合、1つの方法として「whileの利用」があります。



PyAutoGUIで「繰り返し実行」を作りたい場合、以下の「while」を使えます。
 

★whileのリファレンス★
処理:指定した条件を満たすまで、以降の処理を繰り返し実行させる
使い方:while 条件



「while」を使った繰り返し実行(loop)の書き方としては、主に以下の4パターンがあります。
 

★whileのパターン①:条件を満たすまで繰り返す★
・書き方
 while 条件:
  繰り返したい処理
・例
 loop_count = 0
 while loop_count < 5:
  print(loop_count)
  loop_count = loop_count + 1
・実行結果
 「0」「1」「2」「3」「4」と順番に表示される。

  

★whileのパターン➁:繰り返しの途中で抜ける★
・書き方
 while 条件:
  繰り返したい処理
  if 条件:
   break
・例
 loop_count = 0
 while loop_count < 5:
  print(loop_count)
  loop_count = loop_count + 1
  if loop_count == 2:
   break
・実行結果
 「0」「1」「2」と順番に表示される。

  

★whileのパターン➂:条件を満たすとき処理をスキップする★
・書き方
 while 条件:
  if 条件:
   continue
  繰り返したい処理
・例
 loop_count = 0
 while loop_count < 5:
  if loop_count == 2:
   continue
  print (loop_count)
  loop_count = loop_count + 1
・実行結果
 「0」「1」「3」「4」と順番に表示される。

  

★whileのパターン④:無限ループ★
・書き方
 while True:
  繰り返したい処理
・例
 loop_count = 0
 while True:
  print(loop_count)
  loop_count = loop_count + 1
・実行結果
 「0」「1」「3」「4」….「1000」…と無限に数字が表示される。

  

以上が、「whileの構文を解説」となります。
 

PyAutoGUIでwhileによる繰り返し実行するプログラムを作成

「PyAutoGUIでwhileによる繰り返し実行するプログラムを作成」に関して解説します。
 

PyAutoGUIでwhileを使って、繰り返し実行(loop)するプログラムを作成してみましょう。



以下のプログラムを作成し、「pyautogui-while-loop.py」というファイル名で保存してください。
 

import pyautogui
import time

loop_count = 0
while loop_count < 6:
  pyautogui.press('win')
  time.sleep(2)
  loop_count += 1

print('whileを使って繰り返し処理を実施しました。')



続いて、コマンドプロンプトを起動し、作成したプログラムを以下のコマンドで実行してみましょう。

python pyautogui-while-loop.py



コマンド実行後、下の動画のように「キーボード入力が繰り返し実行された」場合、「正常に作成したプログラムを実行できた」と判断できます。
 

PyAutoGUIでwhileを使ったloop


ちなみに、PyAutoGUIでキーボード入力を自動化したい方には、以下の記事がオススメです。
>> 【最短5分】PyAutoGUIによるキーボード入力自動化のパターン6選
 


以上が、「PyAutoGUIでwhileによる繰り返し実行するプログラムを作成」となります。
 

PyAutoGUIで「while」を使うことで、繰り返し実行(loop)を作ることができます。



ちなみに、「PyAutoGUIでExcelやWordの操作を自動化する方法は?」や「Pythonを基礎から体系的に学ぶ方法は?」などを知りたい方には、以下の記事で紹介している本や教材がオススメです。
>> PyAutoGUIの入門に役に立つオススメ本や教材6選

  

【まとめ】PyAutoGUIで繰り返し実行(loop)を実現する2つの方法【最短5分】


いかがでしたでしょうか?

上記で紹介した「if」「while」を理解していただくと、PyAutoGUIである処理の繰り返し実行を簡単に実現できます。

最後にもう一度内容を確認しましょう。
 

★PyAutoGUIで繰り返し実行(loop)を実現する方法★
・forまたはwhileを使う
・forやwhileの主な記述方法は複数パターンある
・for内でpressなどを使うとマウスやキーボード入力を繰り返し実行可能



さらに体系的にPyAutoGUIを学習したい方は、以下の記事で紹介している教材がオススメです。
>> PyAutoGUIの入門に役に立つオススメ本や教材6選

 

 


 

コメント