ブラウザはChrome、OSはWindows、Pythonのバージョンは3.13.0です。ipynbファイルで実行します。
事前準備
まず、WebDriverをダウンロードします。
https://googlechromelabs.github.io/chrome-for-testing/
サイト内のリンクをコピペし、WebDriverをダウンロードします。
zipファイルを解凍するとclomedriver.exeがあるので、それを作業ディレクトリに配置し、pipコマンドでSeleniumをインストールすれば準備OKです。
主要な操作
from selenium import webdriver
こちらでSeleniumをインポートしているものとします。
ブラウザの立ち上げ
browser = webdriver.Chrome()
ブラウザを閉じる
browser.quit()
URLを指定
browser.get("https://qiita.com/")
HTML要素を取得
from selenium.webdriver.common.by import By
elem = browser.find_element(By.CLASS_NAME, "style-1gmi769")
By.IDやBy.NAME、By.TAG_NAMEなども可能。取得するタグがタグを包含している場合、find_elementsを用いる。
inputタグなどに値を送信
elem.send_keys("Python")
キーを押す
from selenium.webdriver.common.keys import Keys
elem.send_keys(Keys.ENTER)
Keys.TAB、Keys.SPACEなども可能。
button要素をクリック
elem2 = browser.find_element(By.CLASS_NAME, "style-g8id1y") # button要素を取得
elem2.click()
要素をstr型で取得
elem3 = browser.find_elements(By.CLASS_NAME, "style-1eiv6gj") # 検索結果に表示された記事たち
elem3[0].text # 一番上の記事
↓出力
'[Python] Python(パイソン)とは?'