【Python】Seleniumを使ってジョブカン入力チェック自動化

はじめに

この記事は ジーズアカデミー Advent Calendar 2017 の9日目です。

最近、何故か業務効率化のシステム自動化に興味津々です。

なので、業務中に困ったことをシステム化しようと思います!

最近、困っていること

ジョブカンの勤怠入力忘れ が激しいことです(汗)

勤怠入力漏れは人事に迷惑をかけてしまうので、入力チェック自動化プログラムを作成していきます!

作成したプログラムはこちら

※注1)ジョブカンは勤怠管理を行う上で非常に便利なサービスです。

※注2)入力漏れを行うのは僕がボケているだけです。

作成手順

ジョブカンAPIを調べてみたら、APIは存しなかったので、Seleniumを用いて、自動化していきます!

Seleniumとは

Googleが開発したWebアプリケーションテスト用 フレームワークです。

(Pythonの他にはrubyJavaなど様々な言語に対応してます!)

処理フロー(概要)

今回の流れは以下の4つの手順にわけてプログラムを作成しました。

といっても、通常の人が使うブラウザ操作をプログラムに置き換えただけなんで処理フローは把握し易いと思います!

1.setup

selenium setupを行います!

今回はヘッドレスブラウザ(ブラウザを立ち上げず、メモリ上でブラウザ操作)を利用しました!

2.page取得

TOPページにアクセス!

3.ログイン

通常のログインのようにID、パスワードを入力します。

Seleniumのmethod find_element~CSS属性を特定して、send_keys でフォームに値を入力すると、

ログイン後のページに遷移します!

ちなみにスクリーンショットを取るのは save_screenshot で出来ます。

ログインページ

f:id:jesushill:20171210010128p:plain

ログイン後のページ

f:id:jesushill:20171210010223p:plain

4.勤怠データ取得

htmlパースは ライブラリ beautiful soupを使いました!

取得した値を標準出力! f:id:jesushill:20171210010605p:plain

最後に

slackやLambda 連携させたらもっと効率化出来るな〜と思いました。

本日は以上です!