はじめに
Mac で Selenium環境構築しようと下記を参考にしたけど少し古かった様子
urlib3
find_element_by_name
の対応をしたのでメモ
pip3 インストール
pip3 --version
でバージョンが表示される人はスキップ。
されない人はMacがインストーラーを立ち上げてくれるので暫し待機。
pip3のアップグレード
python3 -m pip install --upgrade pip
バージョン確認
pip3 --version
pip 23.1.2 from /Users/<User Name>/Library/Python/3.8/lib/python/site-packages/pip (python 3.8)
Selenium インストール
pip3 install selenium
chromedriverインストール
pip3 install chromedriver-binary-auto
urlib3のOpenSSL1.1.1サポート終了対応 (暫定
参考先のコードだと実行エラーが発生する
raise ImportError(ImportError: urllib3 v2.0 only supports OpenSSL 1.1.1+, currently the >'ssl' module is compiled with LibreSSL 2.8.3. See: >https://github.com/urllib3/urllib3/issues/2168
ダウングレード方法確認
urlib3ダウングレード
pip install urllib3==1.26.6
インストールしたものの確認
pip3 list
Package Version
------------------------ --------
chromedriver-binary-auto 0.2.6
pip 23.1.2
selenium 4.9.1
urllib3 1.26.6
テスト
python3 test.py
ブラウザが開いてGoogleでSeleniumが検索できていたら成功!
インストール先に合わせて修正する箇所
/Users/<User Name>/Library/Python/3.8/lib/python/site-packages/chromedriver_binary
test.py
# coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep
from selenium.webdriver.chrome import service as fs
# ブラウザを開く
chrome_service = fs.Service(executable_path='/Users/<User Name>/Library/Python/3.8/lib/python/site-packages/chromedriver_binary')
driver = webdriver.Chrome(service=chrome_service)
# Googleの検索TOP画面を開く
driver.get("https://www.google.co.jp/")
# 検索語として「selenium」と入力し、Enterキーを押す。
# search = driver.find_element_by_name('q') #old
search = driver.find_element("name", "q") #Selenium v4.3.0
search.send_keys("selenium")
search.send_keys(Keys.ENTER)
# 5秒間待機してみる。
sleep(5)
# ブラウザを終了する。
driver.close()
find_elements_by_がなくなったので記述変更対応済み
今までの記述
driver.find_element_by_name('q')
Selenium 4.3.0以降の記述
driver.find_element("name", "q") #new