#author("2022-02-11T18:51:13+09:00","default:honma","honma")
#author("2022-02-11T18:59:51+09:00","default:honma","honma")
* ラズパイでSelenium [#n3800e79]

ラズパイでSeleniumを使用した作業の効率化に関する話題があったので試してみた。

** SDカードの準備 [#s61b4dc5]

インストール後の最初の儀式。

 $ sudo apt update
 $ sudo apt upgrade

** python環境 [#h780f30f]

今回はpython3で導入(Raspberry Pi OSの標準環境はまだpython3)

 $ sudo apt install -y python3 python3-pip
 $ python3 -V
 Python 3.9.2

** selenium の導入 [#u1f963e7]

selenium の導入
selenium の導入(バージョン指定をせずに導入すると selenium 4 なので注意)

 $ pip3 install selenium
 $ pip3 list | grep selenium
 selenium         4.1.0

** chromium-chromedriver の導入 [#c8cd12c5]

chromium-chromedriver の導入

 $ sudo apt install -y chromium-chromedriver
 $ dpkg -l | grep chromium
 ii  chromium-browser                     95.0.4638.78-rpt6                armhf        Chromium web browser, open-source version of Chrome
 ii  chromium-browser-l10n                95.0.4638.78-rpt6                all          chromium-browser language packages
 ii  chromium-chromedriver                95.0.4638.78-rpt6                armhf        WebDriver driver for the Chromium Browser
 ii  chromium-codecs-ffmpeg-extra         95.0.4638.78-rpt6                armhf        Extra ffmpeg codecs for the Chromium Browser

chromedriver のインストール先の確認

 $ which chromedriver
 /usr/bin/chromedriver

** ソースコード(selenium_google.py) [#m8f0f446]

ネットでよく見かけるサンプルソースは selenium 3 だが、最新環境でセットアップすると selenium 4 となるため、一部書き換えが必要。

#highlight(python){{
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

# ブラウザをヘッドレスで起動するためのオプション指定
options = Options()
options.add_argument('-headless')
driver = webdriver.Chrome(options=options)

# Googleのトップ画面を開く
driver.get('https://www.google.co.jp/')

# 画面表示を最大5秒待つ
driver.implicitly_wait(5)

# 検索語を入力する
input_element = driver.find_element(By.NAME, 'q')
input_element.send_keys('Raspberry Pi' + Keys.RETURN)

# 検索結果が出るまでちょっと待つ
time.sleep(3)

# スクリーンショットを保存する
driver.save_screenshot('google.png')

# ブラウザを終了する
driver.close()

}}
#highlight(end)

#ref(selenium_by_google.py)

** 実行 [#hc51d0cd]

 $ python selenium_google.py

※Raspberry PiはRaspberry Pi財団の登録商標です。
#htmlinsert(rpi3b+.html);



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS