PythonとXPathを使ってウェブスクレイピングを行う方法について解説します。XPathはXML Path Languageの略で、XMLやHTML形式の文書から特定の部分を指定するときに使う構文です。
XPathの基本
XPathは、XMLやHTMLの要素を指定するためのパスのようなものです。XPathを使うと、idやclassなどで要素を一意に特定できない場合や、idやclassなどがない場合でも要素を取得することができます。
XPathの基本的な記法は以下の通りです。
//
: ノードの子孫すべて@
: 属性名を指定*
: すべての要素
PythonとXPathを使ったウェブスクレイピング
PythonのSeleniumライブラリを使って、XPathを用いたウェブスクレイピングを行うことができます。以下に具体的なコードを示します。
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
driver = webdriver.Chrome()
driver.get('https://www.yahoo.co.jp/')
# ページが開くまで3秒待機
time.sleep(3)
# 要素をXPathで取得
element = driver.find_element(By.XPATH, '//*[@id="ToolList"]/ul/li[1]/div/a/p/span[1]/span')
# 「ショッピング」をクリック
element.click()
driver.close()
このコードは、Yahoo! JAPANのトップページを開き、「ショッピング」のリンクをクリックするものです。
まとめ
XPathは、ウェブスクレイピングにおいて非常に強力なツールです。Pythonと組み合わせることで、効率的にウェブスクレイピングを行うことができます。.