絶対必要なライブラリ Pyoutogui
これを入れるとキーボードとマウスを操作することができ、自作RPAを作ることができます!
※注意点としては、実際にプログラムが動いている間は、画面が自動操作されるので、その間パソコンが操作できません。
必要なライブラリを紹介します。
画面を操作するときに私が使ったライブラリの一式です。
import pyautogui as pg
import pyperclip
import time
from datetime import datetime, date, timedelta
import datetimeこれだけあれば、やりたいことは大体出来ました。
また、あらかじめキャプチャの画像を用意しておき、一致する場合は、こうする。一致しない場合はこうする。などの条件式を作ることもできます
import pyautogui as pg
as pg としているが、pguiなど、何でもOK
pyautoguiを〇〇として使う。という意味。
普通に、pip install pyautogui でインストールできます。
例えば、エクセルを起動する場合は、以下でエクセルが立ち上がります。
import pyautogui as pg
import time
import pyperclip
pg.press('win')
time.sleep(1)
pyperclip.copy('excel')
pg.hotkey('ctrl','v')
time.sleep(1)
pg.press('enter')
time.sleep(3)
pg.press('enter')※実行するタイミングによって、日本語入力だったりアルファベット入力だったりするので、pyperclipを使って、必ずアルファベット入力出来るようにしています。
import pyperclip
本来はコピペするためのライブラリですが、入力したい文字をあらかじめ設定するために使用しています。
pyperclip.copy('入力したい文字')
ctrl + v ペーストで入力する。
pg.hotkey('ctrl','v')
import time
操作している途中に、待ち時間が発生するので、その時に使います。
1秒待つ
time.sleep(1)
1分待つ
time.sleep(60)
from datetime import datetime, date, timedelta と
import datetime
この2つは日付を操作するときに、セットで使っています。
画面を自動操作するときに日付の入力して検索したり、日付をつけてファイルを保存したりするので、必ず必要になります。以下の記事で日付の形式やハイフンとスラッシュの変換方法など、詳しく説明しています。
例えば、本日、昨日、明日、一昨日の日付の指定の仕方は以下になります。
from datetime import datetime, date, timedelta
import datetime
# 今日は2021年3月13日です
today = datetime.date.today()
print(today)
# 2021-03-13
yesterday = today - timedelta(days=1)
print(yesterday)
# 2021-03-12
tomorrow = today + timedelta(days=1)
print(tomorrow)
# 2021-03-14
# 一昨日
day_before_yesterday = today - timedelta(days=2)
print(day_before_yesterday)
# 2021-03-11
これを使って、日付を入力したり、ファイル名に日付をつけています。
まとめ
これだけのライブラリを使えば、大体の操作はできました。人それぞれだと思いますが、うちの会社は周りの人があまり聞いたことのない、マイナーな会計ソフトを使っているのですが、ブラウザじゃないので、seleniumも使えないし、動作も遅く、互換性もないのでどうしようかと思っていました。でも自作RPAを作ったことで自動で取り込みやエクスポートが出来るようになり、毎日のルーティンから解放されました!








