PythonとSeleniumを使用してヘッドレスブラウジングを行う方法について説明します。ヘッドレスブラウジングは、ブラウザの画面を表示せずに実行するモードのことで、自動化スクリプトの実行によく使用されます。
準備
まず、SeleniumとChromeDriverをインストールする必要があります。以下のコマンドを使用してインストールできます。
pip install selenium
pip install chromedriver-binary
コード例
以下に、PythonとSeleniumを使用してヘッドレスブラウジングを行う基本的なコード例を示します。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import chromedriver_binary
options = Options()
options.add_argument('--headless')
driver = webdriver.Chrome(options=options)
# Google検索画面にアクセス
driver.get('https://www.google.co.jp/')
# htmlを取得・表示
html = driver.page_source
print(html)
driver.quit()
このコードは、Googleの検索画面にアクセスし、そのページのHTMLを取得して表示します。ヘッドレスモードを有効にするためには、Options()
オブジェクトの add_argument
メソッドを使用して '--headless'
を指定します。
注意点
ヘッドレスモードでは、画面描画がないため通常モードよりも処理が早いです。そのため、取得したい要素がまだ出ていないのに取得処理が走ってしまいエラーになるケースがあります。もしエラーが発生した場合は、以下のように待機処理を入れることが有効です。
# 5秒待機
import time
time.sleep(5)
# 要素が見つかるまで最大10秒待機(見つかったら処理が進む)
driver.implicitly_wait(10)
以上がPythonとSeleniumを使用したヘッドレスブラウジングの基本的な方法となります。この知識を活用して、効率的なWebスクレイピングを行ってみてください。.