この記事のレベル
難易度 | |
実用性 | |
学習コスト |
- Seleniumとは何か、何ができるのか
- Seleniumで要素を取得する方法

この記事はこんな人におすすめ!
- Seleniumの基礎を学びたい方
- Seleniumuを活用したいが、要素指定がよくわからず悩んでいる方
はじめに
Seleniumを使えば、ブラウザを自動で操作することができます。ただし、その操作の第一歩となるのが「要素を正しく取得すること」です。
たとえば、検索ボックスに文字を入力したり、検索ボタンをクリックしたり…様々な操作を自動化できますが、すべては画面上のHTML要素を取得できるかどうかにかかっています。
この記事では、Seleniumを使った自動化を実現するために必要不可欠な、要素を取得する方法と特におすすめのXPathを使った取得方法について、具体例を交えて解説します。
Seleniumってなに?
Selenium(セレニウム)は、Webブラウザを自動操作するためのフレームワークです。
もともとはWebアプリのテスト自動化に使われていましたが、今では次のような幅広い用途で使われています。
- 毎日の定型業務の自動化(勤怠、情報取得など)
- スクレイピング(Web上のデータを取得)
- サイト間のデータ連携(入力・確認など)
Seleniumを使ったブラウザ操作の自動化について、具体的に学びたい方は↓の記事を参考にして下さい。
Seleniumにおける「要素」とは?
Seleniumでブラウザ操作を自動化するには、ページ上の「要素(element)」を見つけて操作する必要があります。
ここでの「要素」とは、HTMLの中のひとつひとつのパーツのこと。たとえば…
- 入力ボックス(<input>)
- ボタン(<button>や<a>)
- 見出しやテキスト(<h1>、<p> など)
- 表やリスト、リンクなど
つまり、Seleniumにとって「要素を取得する」とは、ページ内の“どの部分”をクリックするのか、入力するのかを指定することなのです。
しかし実際には、ページの構造が複雑だったり、似たような要素がたくさんあったりして、「正しい要素を見つける」ことが意外にややこしいと感じる人も多いです。
そんな人向けに、「要素の取得方法」と「XPathの使い方」を具体例で解説していくので、ぜひ順番に読み進めてみてください。
要素を見つけるには?開発者ツールの使い方
ここまでの説明で、「Seleniumを使いこなすには、要素(element)を特定して取得する必要がある」ということはご理解いただけたと思います。
では、どうやってその要素を見つけるのか…?
答えは、ブラウザの開発者ツール(DevTools)を使うことです。
ここからは、Google Chromeの開発者ツールを使って、IDやclass、XPathを調べる方法をわかりやすく紹介します。
ステップ① 開発者ツールを開く
- Chromeで https://www.google.com を開く
- 検索ボックスの上で右クリック →「検証」を選択
- 画面右側または下にHTML構造が表示されます(開発者ツール)
ステップ② 対象の要素を確認する
今回は検索ボックスを例に、要素を確認する方法を紹介します。
- 確認対象の要素をクリックし、HTMLを確認する
- クラス名や要素名を確認する ※今回の場合、
class="gLFyf" name="q"
であることが確認できます。

ステップ③ コードに反映する
以下のコードは、
「開いているWebページの中から、name
属性が 'q'
の要素(=検索ボックス)を探して取得し、それを変数 search_box
に代入する」
という意味です。
その後、検索ボックスにテキストを入力する処理では、代入した search_box
を使って実現します。
search_box = driver.find_element(By.NAME, "q")
参考 XPathによる要素の指定方法
HTMLの class
属性などは、複数の要素で共通して使われることが多く、クラス名だけでは目的の要素を一意に特定できないケースがあります。
そういった場合に有効なのが、XPathによる要素の指定です。
- XPathをコピーする手順
- 対象の要素(ハイライト箇所)の上で右クリック
- 「Copy」→「Copy XPath」を選択
コピーされたXPathを、Seleniumで次のように使います。
element = driver.find_element(By.XPATH, '貼り付けたXPath')
まとめ
今回の記事を通じて、以下のポイントを理解できたと思います。
- Seleniumにおける「要素」とは何か
- 開発者ツールを使って要素を調べる方法
- 要素を取得するための基本的な書き方(
By.NAME
,By.XPATH
など) - XPathを使った指定方法と活用例
ぜひ、実際にコードを試してみて、あなたの作業に合った自動化にチャレンジしてみてください!
Seleniumを使ったブラウザ操作の自動化について、具体的な実現方法を学びたい方は↓の記事を参考にして下さい。
さらに学びたい方へ
「ワンランク上のビジネススキルを身につけたい」
そんな方に注目されているのが、オンライン学習サービスです。
中でも特におすすめなのが、人気の2大サービスSchoo(スクー)
とUdemy(ユーデミー)
。
特徴や違いを比較しながら、あなたに合った選び方をわかりやすく解説します。
SchooとUdemyの特徴は?
あなたに向いているのはSchoo?Udemy?
- まずは無料で試してみたい人
- 月額定額で色んな講座を受けたい人
- ビジネススキル全般を学びたい人
- 隙間時間でスキルアップしたい人
- 講座単位で支払いをしたい人
- 特定の知識・スキルを学びたい人
- 学習の時間を集中的に確保できる人
コメント