【Python】Seleniumのwebdriverの使い方と主要メソッド一覧|初心者でも簡単にスクレイピングができる

python-how-to-use-selenium-webdriver Python
記事内に広告が含まれていることがあります。
[PR]

PythonでWEBページのスクレイピングなどをすることができる、seleniumモジュールのwebdriverのインストールから実際の使い方と、主要メソッドの一覧をまとめています。

Webdriverのインストールと設定

webdriver.Chrome(‘chromedriver.exe’)とセットで使うため、chromedriver.exeファイルが同じ階層にある必要があります。

chromedriver.exeファイルの取得

chromedriver.chromium.orgのページからchromedriver.exeファイルをダウンロードします。

現在の安定版(current stable release)を選択します。

自分のOSに合ったもZipファイルを選択します。

DLしたファイルを処理を記述する .pyファイルと同じ階層に保存します。

webdriverのインストール

importを使って、seleniumモジュールのwebdriverをインストールします。

変数urlに取得してくるWEBページのURLを記述します。

from selenium import webdriver
browser = webdriver.Chrome('chromedriver.exe')

url = 'https://example.com/'
browser.get(url)

from selenium import webdriver
seleniumモジュールのwebdriverをインストール

browser = webdriver.Chrome('chromedriver.exe')
webdriverでChromeを起動

url = 'https://example.com/'
URLの指定

browser.get(url)
getメソッドで指定したurlを開く

Webdriverの主要メソッド一覧

要素指定なしで使えるメソッド

– get(指定したぺージを開く)
– back(戻る)
– forward(進む)
– refresh(更新する)
– current_url(現在のURLを取得)
– title(ページタイトルの取得)
– page_source(ページソースの取得)
– close(現在のウィンドウを閉じる)
– quit(すべてのウィンドウを閉じる)
– maximize_window(ウィンドウの最大化)

メソッドの使い方と一例

browserオブジェクトに対して使います。

例:browser.get(https://~)
  └ 指定のURLを開く


要素を指定するメソッド

基本的な考え方はJavaScriptに似ています。要素を1つ指定するか、複数指定するかで使うメソッドが異なります。

1つの要素を指定する

– find_element_by_id
– find_element_by_class_name
– find_element_by_css_selector
– find_element_by_name
– find_element_by_tag_name
– find_element_by_xpath
– find_element_by_link_text

複数の要素を指定する

– find_elements_by_class_name
– find_elements_by_css_selector
– find_elements_by_xpath
– find_elements_by_id
– find_elements_by_link_text
– find_elements_by_tag_name

メソッドの使い方と一例

browserに対して使います。引数に検索する内容を指定します。

例:browser.find_element_by_id('headline')
 └ 指定の要素が含まれるエレメントを取得
 └ 上記例の場合 id=’headline’

要素指定と合わせて使うメソッド

– click(要素をクリックする)
– send_keys(テキスト入力)
– getText(テキスト取得)
– get_attribute(属性取得)
– is_enabled(要素が有効か判断)
– is_selected(要素が選択されているか)

メソッドの使い方と一例

find_~系のメソッドで要素を取得した後に使います。

例1:driver.find_element_by_id('btn').click()
 └ 指定した要素に対しメソッドを実行
 └ 上記例の場合、id=’btn’の要素をclick

例2:
driver.find_element_by_id('useName').send_keys("myname")
 └ 上記例の場合、id=’useName’の要素にテキストで「myname」と入力

タイトルとURLをコピーしました