株に関する情報を取得するのに様々なサイトからSeleniumを用いてスクレイピングを行うのですが、Seleniumは結構難しいのと、使い方をよく忘れてしまうので、備忘録のため自分がよく利用するサイトおよびテクニックをまとめました。
他にも良いテクニックが見つかれば更新していきたいと思います。
Python用Seleniumのドキュメント
Seleniumの公式サイトはこちらのサイトで、「Selenium documentation」で検索すると出てくるのですが、このページはpython以外の言語も含んでいるせいかめっちゃわかりにくいです。
非公式サイトですが、Python専用でまとめてくれている下の「Selenium with Python」というページ方がわかりやすいのでこちらがおすすめです。
上のページは、まとまっていて良いのですが、やはり英語なのでやや骨が折れます。なので、親切に解説してくれている日本語のページを書いております。
find_element, find_elementsの使い方
スクレイピングの基本であるページの要素を取得する関数の使い方です。
結構使い方をよく忘れてしまうのでこちらを参照するのが良いと思います。
「Selenium with Python」のサイトではここになります。
https://selenium-python.readthedocs.io/locating-elements.html
Seleniumでframeを移動する
frame分けしているサイトでは、switch_to.frameという関数を使いわなければなりません。
しかも一度移動してしまった後に元のframeに戻りたいということも発生します。
以下の2つのサイトが参考になります。
「Selenium with Python」のサイトではここです。
https://selenium-python.readthedocs.io/navigating.html?highlight=switch_to_frame
Seleniumで画像を取得する
画像を取得するときは、get_attributeでurlを取得した後にurllib.requestを使って画像を取得します。
「Selenium with Python」のサイトではここです。
https://selenium-python.readthedocs.io/api.html?highlight=get_attribute#selenium.webdriver.remote.webelement.WebElement.get_attribute
Seleniumでドロップダウンオプションを選択する
ドロップダウンを選択する方法です。こちらのサイトが参考になります。
Seleniumで任意の場所をクリックする
Seleniumで任意の場所をクリックする方法は以前に私が書いた投稿があります。
おすすめ書籍
Pythonのスクレイピングに関して、もっと詳しく勉強したいという方はこちらの書籍がおすすめです。