「find_element(By.PARTIAL_LINK_TEXT, "xxx")」の"xxx"にリンクテキストの一部文字列を指定することで要素を取得することが出来ます。
下記のサンプルでは、Gmailのリンク要素をリンクテキスト名から取得しています。リンクテキスト名「Gmail」の一部文字列である「ail」を「find_element(By.PARTIAL_LINK_TEXT, "xxx")」で指定することでリンク要素を取得することができ、クリックすることが可能となります。
※要素取得の詳細についてはこちら
説明
◆メソッド
・find_element(By.PARTIAL_LINK_TEXT, link_text)
◆使用形態
・driver.find_element(By.PARTIAL_LINK_TEXT, "Login")
◆備考
・引数に取得したい要素で使われているリンクテキスト名(anchorタグ上のテキスト)を
指定することで、要素を取得できる
・引数がリンクテキスト名の一部または完全一致する場合に要素を取得する
◆関連項目
・アクティブな要素を取得する
・class属性から要素を取得する
サンプル
from selenium import webdriver
from selenium.webdriver.chrome import service
from selenium.webdriver.common.by import By
#ChromeDriverのパスを変数に設定
CHROMEDRIVER = "D:\driver\chromedriver.exe"
#ChromeDriverのstartとstopを制御するServiceオブジェクトを介してパスを渡す
chrome_service = service.Service(executable_path=CHROMEDRIVER)
#Chromeを起動
driver = webdriver.Chrome(service=chrome_service)
#指定したURLに遷移する
driver.get("https://www.google.co.jp")
#リンクテキスト名の一部が"ail"の要素を取得
element = driver.find_element(By.PARTIAL_LINK_TEXT, "ail")
#取得した要素(Gmailのリンク)をクリック
element.click()
※selenium version 4.1.3で動作確認をしています(ブラウザのUIや属性値などが変更された場合、実行結果が異なる可能性があります)
実行結果

動画デモ
※字幕をONにすると解説のテロップが表示されます※


