SeleniumとChromeDriverでYahoo!mobageにログイン【Python3】スクレイピング

タイトル通りSeleniumとChromeDriverを使ってYahoo!mobageにログインして適当な情報を取得してきます

事前準備

環境

Python3.6.4

Seleniumのインストール

ChromeDriverダウンロード

chrome driver

Seleniumの使い方メモ

新しいChromeブラウザを開く

新しいChromeブラウザにオプションを指定して開く

今回はオプションでヘッドレスモードを有効化しています。

最大待機時間の設定

ページの読み込みが終わるまでの最大待機時間の設定(秒) スクリプト実行中の最大待機時間の設定(秒)

待機

待機時間の設定 対象DOMの読み込みが完了するまで待機 対象が押下可能になるまで待機

指定URLを読み込む

サンプルはYahoo!のトップページを指定しています

ブラウザを閉じる

開いてるページを閉じる 全てのタブを閉じる

要素の取得

公式ドキュメントでは下記のfind_element_by_*が推奨されています

要素のプロパティの取得

body要素のinnerHTMLの取得 img要素のsrcの取得

要素の状態取得

要素が表示されていればTrueを返す 要素が有効であればTrueを返す 要素(チェックボックスかラジオボタン)が選択されていればTrueを返す

ActionChains

新しいActionChainsオブジェクトを生成 ActionChainsオブジェクトに格納された全てのイベントを格納された順に実行する ボタンを押下する 10秒間一時停止する 指定要素に"aiueo"を送信する 現在フォーカスされている要素にENTER KEYを送信する

Keys

サンプル

Yahoo!mobageにログインして適当な情報を取得してくる

ログイン用のIDとパスワード、ダウンロードしたドライバーのパスは適せん変更して下さい
かなり適当なサンプルなので自己責任でお願いします( `ー´)ノ

今回もとりあえずメモ
説明は追記します(/ω\)

コメント

  1. 今度、ヤフオクで同様のことをやろうと思っているのですがとても参考になる記事でした。
    ちなみに、上記内容ですが、躓いた点はとくにありませんでしたか?

    返信削除
    返信
    1. コメントありがとうございます(*´▽`*)

      Seleniumが優秀なので特に躓いた点はないですけど、
      強いて言えばiframe内のデータの取得でしょうか

      iframeからurl取得して、そこからデータ取ってこないといけないところを
      iframeから直接データ取ってこようとして
      「あれ?データがない・・・?」
      ってなっちゃった記憶がありますw

      ご存じだとは思いますけど、
      大手はスクレイピングやクローラー等禁止しているところも多いので
      アカウント凍結されないようにお気を付け下さいませ(`・ω・´)b

      削除

コメントを投稿

このブログの人気の投稿

Cmderのインストールと設定、消した文字が残るバグ対策etc...

Chocolateyのインストールと設定

【Android】Warning: XML tag has empty body