1. XPath と CSSセレクタって何?
今日はSeleniumでのウェブ自動化に向けて一歩前進し、XPathとCSSセレクタについて学ぶよ。これらの小さくて強力なツールが、ウェブページ上のエレメントを探す際の信頼できる味方になるんだ。セレクタの世界に一緒に飛び込んで、それらの使い方をマスターしよう!
もしHTMLドキュメントが密な森だとしたら、XPathとCSSセレクタはその地図みたいなものだよ。これらは必要な「木」(プログラミング的にはエレメント)に到達する道筋を教えてくれるんだ。このツールを使えば、たとえメートルのコードや何千ものタグの背後に隠れたエレメントでも見つけられるようになるよ。
XPath
XPath (XML Path Language) は、XMLドキュメントをナビゲートするための言語だよ。ただ、HTMLってXMLのハイブリッドみたいなもんなんだよね。だからこそXPathはHTMLドキュメントにも便利に使えるんだ。指定したルート通りにエレメントにたどり着けるよ。
CSSセレクタ
CSSセレクタは、スタイルシートの世界から来ているんだ。デザイナーになる必要はないから安心して!CSSセレクタは、エレメントの種類、クラス、ID、状態に基づいて正確にエレメントを選ぶためのものだよ。これを使うのは思っているより簡単で、すでに知らずに使っているかもしれないね。
2. コードでのXPathとCSSセレクタの使い方
さて、セレクタが何かを知ったところで、いきなり実践に移ろうよ。Seleniumと一緒に使いながら驚きのことをしよう!
XPathの使い方
SeleniumでXPathを使ってエレメントを探す例を見てみよう:
Python
from selenium import webdriver
# ドライバの設定
driver = webdriver.Chrome()
# ページを開く
driver.get('https://example.com')
# XPathでエレメントを探す
element = driver.find_element_by_xpath('//div[@id="menu"]/ul/li/a')
# エレメントのテキストを出力
print(element.text)
# ブラウザを閉じる
driver.quit()
説明:
-
//div[@id="menu"]/ul/li/a
— これがXPathだよ。 意味としては「ドライバー、idが'menu'の
GO TO FULL VERSION