前回の続き
教科書通りでもつまらないのでここから一気に路線変更しました!
ColaboratoryにSelenium導入
下記を参考に設定。
やったことはひたすら記事通り・・・
先駆者の方ありがとうございます!!
ログイン処理してログイン後の情報を取得する
無事にSeleniumを導入できたので、実際に動かしてみる。。
お題は弊社のワーカーサイトにIDとパスワードを入力し、ログインボタンを押す。遷移後のおすすすめの店舗に出てくる4店舗を出力するというもの。
手順
- Chromeなどで対象URLを開発者モードで開く
- 入力フォームにあるidを取得する
- ID、パスワード、ログインボタン分確認しておく
- Pythonにドライバーの設定をしておき、対象URLを開く
- ID、パスワードに入力をする
- ログインボタンを押す
- 開発者モードで遷移後の画面に表示されるおすすめ店舗のclass名を取得する
- 店舗名のテキストを取得する
- 出力する
注意点
- 2の手順でidやclassなどが一意なものなのか検索しておく
→driverのメソッドにfind_elementとfind_element s があるため。 - バージョンによってfind_elementの引数でidかclassかを指定する場合もあれば、find_element_by_idというメソッドの場合もあるので要確認
- 5ではsend_keysメソッドを使用
- 6ではsubmitを使用
- 7は複数使用されているため、配列で返却される
- 8でループ文を使用しprintする
まとめ
Colaboratoryはヘッドレスモードで使用するので、実際にどう動いているのか確認できないのが残念な点です。
とはいえ実装とデバッグが終われば見ることないのですが・・・
初期段階ではイメージつきにくいので画面見せながら説明するのがよいですね。