【テスト自動化】Python selenium 簡単!スクリプト自動実行!(pyinstaller、タスクスケジューラ)

python_selenium_vsc_task_title

皆さん、こんにちは。

前回は「statcounter」サイトのブラウザシェア率操作を自動化しました。
今回はそれをpyinstallerでexe化し、タスクスケジューラ連携、時間実行したいと思います。

目次

■記事内リンク

Pyファイル作成
VSCでpyファイルexe化
タスクスケジューラ設定
時間実行

□Pyファイル作成

まずは、Pyファイルを作成していきます。

◇事前準備

前回作成した「statcounter」でブラウザシェア率を取得するコードを使用します。
以下に過去の記事、及びコードを用意していますのでご参照頂ければと思います。

・前回記事
・コード

https://susakiworks.com/wp-content/uploads/2021/05/win_VSC_01.zip

◇pyファイル作成

・Step1
win_vsc2_01

画面左上の「ファイル」⇒「新規ファイル」または、ショートカット「Ctrl+N」を押下します。
「Untitled」ファイル作成後、「言語{0}の選択」を選択します。

win_vsc2_02

その後、言語の一覧から「Python」を選択します。

・Step2
win_vsc2_03

前回作成した「win_VSC_01.ipynb」ファイルの「通しでの実施」部分のコードをコピーし、作成したpyファイルに貼り付けます。

・Step3

pyファイルの名称を設定します。
「ファイル」⇒「名前を付けて保存」を選択後、ファイル名を設定し、保存します。
今回私は、「win_statcounter_browser.py」と設定しました。
これでpyファイルを用意できました。

□VSCでPyファイルexe化

続いてPyファイルをexe化します。

◇「pyinstaller」のインストール

・Step1
win_vsc2_04

pyファイルをexeする場合、「pyinstaller」を使用します。
こちらは、ターミナルで実施します。
ターミナルが表示されていない場合は、画面上部のメニュー「表示」⇒「ターミナル」を選択し表示します。

・Step2

ターミナルで、以下コードを実行します。
Pip3 install pyinstaller

win_vsc2_05

コード実行後、以下のように表示されたらOKです。

◇exe化実行

・Step1

ターミナルで、pyファイルの階層を指定します。
私の場合は、ユーザー直下の「statcounter」に配置しましたので、以下のように記述します。
cd C:\Users\sinsu\statcounter

※exe化する際、複数のファイルが生成されますので、事前にフォルダを用意しておきましょう。

・Step2

ターミナルで以下コマンドを実行します。
pyinstaller win_statcounter_browser.py

するとexe化の処理が実行されます。
以下のように表示されればOKです。

・Step3
win_vsc2_07

exe化実行後、「statcounter」内に「__pycache__」フォルダが作成されます。
そのフォルダ内に「win_statcounter_browser.cpython-39.pyc」が生成されます。

これをダブルクリックしてみましょう。
するとブラウザが起動し、ブラウザシェア率の取得が自動的におこなわれます。
自動実行が終わると、CSV、pngのキャプチャがダウンロードされます。

win_vsc2_08

「win_statcounter_browser.cpython-39.pyc」をタスクスケジューラで時間実行してみましょう。

□タスクスケジューラ設定

タスクスケジューラの設定を行っていきます。

タスクスケジューラについては、過去に以下記事を投稿していますので、そちらもご覧頂ければと思います。

◇タスクスケジューラ起動

・Step1
win_vsc2_09

まずタスクスケジューラを起動しましょう。
Windowsの「Win+R」を選択し、「ファイル名を指定して実行」を表示します。
名称を「taskschd.msc」を入力し、「OK」を選択します。

・Step2
win_vsc2_10
win_vsc2_11

タスクスケジューラ起動後、「タスクスケジューラ ライブラリ」を選択した状態で、画面右側の「操作」から「新しいフォルダー」を選択します。

名前を以下のように設定します。

私は「statcounter_browser」と設定しました。

・Step3

「操作」の「タスク作成」を選択します。
「全般」、「トリガー」、「操作」のタブを設定していきます。

win_vsc2_12

「全般」タブ
セキュリティオプションの設定を行います。
ここでは「ユーザーがログオンしているときのみ実行する」を選択します。

win_vsc2_13

「トリガー」タブ
「新規」を選択し、タスクを実施するスケジュールを選っていします。
ここでは以下のように、月(6/7月)、1日、10:00に実施するように設定しています。

win_vsc2_14

「操作」タブ
「新規」を選択し、プログラム/スクリプトで、exe化で生成された「win_statcounter_browser.cpython-39.pyc」を指定します。

以上で、タスク実行の準備はOKです。

 

□時間実行

実際に設定したタスクを実行してみましょう。
タスクスケジューラの「実行」項目を選択します。

win_vsc2_15


実行を押すと、自動的にブラウザシェア率の取得が行われます。

win_vsc2_16

1)

win_vsc2_17

2)

3)

win_vsc2_18

 

 

実行後、CSVとキャプチャ画像がダウンロードできていればOKです。

また、設定した時間でも実行が可能です。

 

■最後に

今回は、pyファイルのexe化、タスクスケジューラ設定、時間実行についてご紹介いたしました。
最後まで見て頂き、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

・名前:Susaki
・住所:福岡県
・年齢:40代
・趣味:筋トレ、読書
・仕事:
20歳から今まで20年間以上、テスト関連の業務を行っています。
・本ブログサイトについて:
ソフトウェアテスト関連の知見、自動化、業務効率化を中心に情報を発信していきます。
宜しくお願いします!

コメント

コメントする

目次