※本記事の対象OSはMac OSになりますのでご留意ください。
背景
筆者が所属する会社の勤怠システムは、入力が少々手間のかかるもので、日々打ち込むのが面倒くさいなと思っていた。
ネットで検索したところ、seleniumというpythonのフレームワークを利用すると、ブラウザの起動からシステムへのアクセス、フォームへの入力などを自動化させることができる、との記事を見つけた。
筆者はJavaエンジニアでPythonの知見はまったくないが、せっかくなので挑戦してみることにした。
必要なツール
・Homebrew
・pyenv
・python
・selenium
・chromeDriver
■selenium
ブラウザ操作を自動化するためのフレームワークです。
Webアプリケーションのテストを目的としてリリースされました。その他にも、パソコン上で行う日常業務の自動化や、Webサイトの情報を収集して欲しい情報だけを抜き出すスクレイピングにも活用されています。
■chromeDriver
ブラウザを制御するためのドライバです。
ブラウザ操作を自動化するには、ブラウザごとに異なる専用のドライバが必要です。通常、パソコンにインストールされているブラウザとそのバージョンに合わせてドライバを用意する必要があります。
Homebrew、pyenv、pythonのインストール
以下を参照。
・Homebrewのインストール手順
# Homebrewのインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# 環境変数設定(上記のコマンド結果にパスを通してくださいと表示されるので、 Add Homebrew to ~ に続く以下2つのコマンドを実行)
echo 'eval "$(/usr/local/bin/brew shellenv)"' >> /Users/[ユーザ名]/.bash_profile
eval "$(/usr/local/bin/brew shellenv)"
# 設定ファイルに出力されたか確認
vi /Users/[ユーザ名]/.bash_profile
# インストールできたか確認
brew -v
## →(出力結果)Homebrew 4.2.19
# 設定ファイル反映
source /Users/[ユーザ名]/.bash_profile
pyenvとpythonのインストール
以下を参照
・pyenv、pythonのインストール手順
※pyenv経由せずに直接pythonをインストールしたい方はこちら参照
【注意事項】
・pythonのバージョンは3系であればなんでも良い。(筆者は 3.12.2 を指定)
・上記記事内で、pyenvの初期化の設定をするのだが、設定ファイル(.bash_profile / .bashrc / .zhrcなど)は、Homebrewの環境変数を記載したファイルと同じファイルを指定してあげる。(筆者は、/Users/ユーザ名/.bash_profile に追記した)
# pyenv インストール
brew install pyenv
# pyenv バージョン確認
pyenv -v
# pyenvの設定
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> /Users/[ユーザ名]/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> /Users/[ユーザ名]/.bash_profile
echo 'eval "$(pyenv init -)"' >> /Users/[ユーザ名]/.bash_profile
# 設定ファイル反映
source /Users/[ユーザ名]/.bash_profile
# インストール可能なPythonのバージョン一覧
pyenv install --list
# バージョン3.12.2をインストール
pyenv install 3.12.2
# Python実行時このバージョンで実行されるよう設定
pyenv global 3.12.2
# バージョン確認
python --version
seleniumとchromeDriverのインストール
以下を参照
https://doku-pro.com/chromedriver-mac-windows/#MacChromeDriver
【メモ】
Windowsの場合は、ブラウザのChromeとバージョンを合わせてあげる必要があるらしい
pip3 install selenium
brew install chromedriver
※Chromeドライバーのバージョンが変更された場合、再度brew install chromedraiver
を実行。そのバージョンにあったドライバーにしてくれる。