★悩み★
・Chromeなどの外部アプリケーションをPyAutoGUIから起動できる?
・PyAutoGUIで起動したアプリケーションに対して文字入力をしたい
・PyAutoGUIで外部アプリケーションの操作を自動化して仕事を楽にしたい
こういった「悩み」に答えます。
★本記事の内容★
① PyAutoGUIとは
➁ PyAutoGUIで外部アプリケーションを起動する方法3選
本記事を実践することで、「PyAutoGUIから外部アプリケーションであるChromeを起動し操作する」プログラムを作れました(下の動画参照)。
記事の前半では「PyAutoGUIとは?」や「インストール方法」を解説します。
記事の後半では「コマンド経由でPyAutoGUIから外部アプリケーションを起動する方法」と「PyAutoGUIの画像認識で外部アプリケーションを起動する方法」を紹介します。
この記事を読み終えることで、「PyAutoGUIからメモ帳やChromeなどの外部アプリケーションを起動し、起動した外部アプリケーションに対して文字入力やクリックなどの操作」ができる状態になります。
PyAutoGUIとは?
「PyAutoGUIとは?」/「特徴」/「ユースケース(利用場面)」に関しては、以下の記事をご覧ください。
>> 【要点】PyAutoGUIとは?初心者向けに特徴から使い方までを図解
また、PyAutoGUIのインストール方法に関しては、以下の記事をご覧ください。
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順
>> 【最短5分】UbuntuにPyAutoGUIをインストールする手順
>> 【最短5分】MacにPyAutoGUIをインストールする手順
ウェブブラウザなど外部アプリケーションの操作を自動化をしたい場合、PyAutoGUIを使って無料で実現できます。
以降で、「PyAutoGUIから外部アプリケーションを起動する3つの方法」を紹介しますね。
PyAutoGUIでアプリケーションを起動する方法3選
「PyAutoGUIでアプリケーションを起動する方法2選」に関してご紹介します。
★ご紹介事項★
① コマンドでアプリケーション起動【Popenを使う】
➁ 画像認識でアプリケーション起動【locateOnScreenとdoubleClickを使う】
➂ 指定位置に外部アプリケーションのアイコンを置きクリックで起動
④ どの方法でPyAutoGUIから外部アプリケーションを起動するべき?
以降で、上記の各項目に関してご説明します。
コマンドでアプリケーション起動【Popen】
PyAutoGUIでChromeなどのアプリケーションを起動する方法の1つとして、以下の「subprocess.Popen()関数」を使う方法があります。
★subprocess.Popen()関数とは:Pythonの標準ライブラリの1つ★
・機能
指定されたコマンドを実行する
・使い方
subprocess.Popen([実行したいコマンド], shell=True)
・例
subprocess.Popen([‘start’, ‘chrome.exe’], shell=True)
・実行結果
Google Chromeが起動する(Windows環境)
・参照
Pythonの標準ライブラリPopenのリファレンス(Python公式サイト)
PyAutoGUIとsubprocess.Popen関数を使うことで、「Chromeを起動し、起動されたChrome上でGoogle検索を自動で行う」プログラムを作成できます(下の動画参照)。
上記の詳しいプログラム(ソースコード)に関しては、以下の記事をご覧ください。
>> 【最短5分】PyAutoGUIをWindowsにインストールする手順
画像認識でアプリケーション起動【locateOnScreen】
PyAutoGUIで外部アプリケーションを起動する方法の1つとして、以下の「locateOnScreen関数」と「doubleClick関数」を使う方法があります。
★locateOnScreen関数とdoubleClick関数:PyAutoGUIが提供する関数★
・機能
locateOnScreen関数は、指定した画像が画面上に存在するかを確認する
doubleClick関数は、指定した位置をダブルクリックする
・使い方
chrome_position= pyautogui.locateOnScreen(画像ファイルのPATH)
pyautogui.doubleClick(chrome_position)
・例
chrome_position = pyautogui.locateOnScreen(‘Chromeのアイコン画像’)
pyautogui.doubleClick(chrome_position)
・実行結果
Chromeのアイコンをダブルクリックし、Google Chromeが起動される
・参照
【最短5分】PyAutoGUIのlocateOnScreenで画像クリック
【最短5分】PyAutoGUIで多用するマウス操作の自動化7選
まずは、デスクトップ上にGoogle Chromeのショートカットアイコンを作成しましょう。
その後、Google Chromeのショートカットアイコンの画像を作成しましょう(下の図参照)。
続いて、「locateOnScreen関数」と「doubleClick関数」を使ってPyAutoGUIからChromeを起動するプログラムを作成します(わずか3行)。
import pyautogui
chrome_position = pyautogui.locateOnScreen('chrome_icon.jpg', confidence=0.7)
pyautogui.doubleClick(chrome_position)
上記プログラムを「start-chrome.py」と保存し、以下のコマンドで実行してください。
python start-chrome.py
コマンド実行後、下の動画のように「Chromeを起動」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
指定位置に外部アプリケーションのアイコンを置きクリックで起動
PyAutoGUIで外部アプリケーションを起動する方法の1つとして、以下の「doubleClick関数」を使う方法があります。
★doubleClick関数:PyAutoGUIが提供する関数★
・機能
doubleClick関数は、指定した位置をダブルクリックする
・使い方
pyautogui.doubleClick(0, 10)
・例
pyautogui.doubleClick(0, 10)
・実行結果
デスクトップの左上に設置されたChromeのショートカットアイコンを
クリックしGoogle Chromeを起動する
・参照
【最短5分】PyAutoGUIで多用するマウス操作の自動化7選
まずは、下図のようにPyAutoGUIから起動したい外部アプリケーションのショートカットアイコンをデスクトップの左上に配置してください(今回はChromeとします)。
続いて、「doubleClick関数」のみを使ってPyAutoGUIからChromeを起動するプログラムを作成します(わずか2行)。
import pyautogui
pyautogui.doubleClick(0,10)
上記プログラムを「start-chrome-by-click.py」と保存し、以下のコマンドで実行してください。
python start-chrome-by-click.py
コマンド実行後、下の動画のように「Chromeを起動」できた場合、「正常に作成したプログラムを実行できた」と判断できます。
どの方法でPyAutoGUIから外部アプリケーションを起動するべき?
PyAutoGUIでは、3つの方法で「外部アプリケーションの起動」ができることをご説明しました。
以下に、どの方法を使うべきかの簡単な判断基準を掲載します。
★判断基準★
・外部アプリケーションのアイコンが定期的に変わる
コマンドでアプリケーション起動【Popenを使う】
・外部アプリケーションのアイコンが定期的に変わらない
画像認識でアプリケーション起動【locateOnScreenとdoubleClickを使う】
・デスクトップ上のアイコン配置が換わらない
指定位置に外部アプリケーションのアイコンを置きクリックで起動
プログラムの複雑さは増しますが、プログラムのメンテナンス性や互換性(他のパソコンでも実行できること)を考慮すると「コマンドでアプリケーション起動」がオススメです。
PyAutoGUIでは、Chromeなどの外部アプリケーションの起動から起動したアプリケーションの操作まで自動化できます。
ちなみに、「PyAutoGUIでExcelやWordの操作を自動化する方法は?」や「Pythonを基礎から体系的に学ぶ方法は?」などを知りたい方には、以下の記事で紹介している本や教材がオススメです。
>> PyAutoGUIの入門に役に立つオススメ本や教材6選
【まとめ】PyAutoGUIでChromeなどの外部アプリケーションを起動
いかがでしたでしょうか?
上記で紹介した「Popen」「locateOnScreen」「doubleClick」の関数を使うことで、「PyAutoGUIで簡単にChromeなどの外部アプリケーションを起動」できるようになります。
最後にもう一度内容を確認しましょう。
★まとめ★
・PyAutoGUIから外部アプリケーションの起動から操作まで可能
・「Popen」「locateOnScreen」「doubleClick」で外部アプリを起動可能
・プログラムの保守観点から「Popen」を使うことがオススメ
さらに体系的にPyAutoGUIを学習したい方には、本ブログで紹介している記事がオススメです。
>> 本ブログで紹介している入門者のためのPyAutoGUI記事一覧
コメント