Pythonでseleniumを利用して要素に入力処理を行う場合はsend_keys()などを使用しますが、今回は入力した値をクリアする方法になります。
通常入力した値をクリアする場合にはclear()を使用します。
値をクリアしたい要素を洗い出してその要素に対してclear()処理を実行すれば要素内の値はクリアされます。
要素に入力された値をクリアする簡単な例としてGoogle検索画面にアクセスして、キーワード入力後、その値をクリアするような例を載せておきたいと思います。
Chromeの場合の例が以下になります。
(selenium ver.4.6以降の場合)
from selenium import webdriver from selenium.webdriver.common.by import By # ドライバー指定でChromeブラウザを開く driver = webdriver.Chrome()
driver.get('https://www.google.com/') element = driver.find_element(By.NAME, "q") #検索テキストボックスに"abc"を入力 element.send_keys("abc") #入力された"abc"をクリア
element.clear() # タブを閉じる driver.close() driver.quit()
同様にEdgeの場合は以下になります。
4行目のドライバーの設定の箇所が違うだけです。
(selenium ver.4.6以降の場合)
from selenium import webdriver from selenium.webdriver.common.by import By # ドライバー指定でEdgeブラウザを開く driver = webdriver.Edge()
driver.get('https://www.google.com/') element = driver.find_element(By.NAME, "q") #検索テキストボックスに"abc"を入力 element.send_keys("abc") #入力した値"abc"をクリア element.clear() # タブを閉じる driver.close() driver.quit()
上記例では、
2行目までで必要なライブラリのインポートを行っています。
4行目はChrome用またはEdge用のドライバー設定となります。
このdriverを使用して、5行目でdriver.getの後にオープンしたいURLとしてGoogle検索画面のURLを指定することで検索画面を開いています。
その後、6行目で画面内で検索キーワード入力窓の要素を探索して「element」に設定しています。
8行目でsend_keysに検索用のキーワード「abc」を引数として渡すことで検索窓にキーワードを入力しています。
10行目のelement.clear()で入力した値「abc」をクリアしています。
12、13行目で開いたウインドウを閉じて終了させています。
これにより、Google検索画面を表示しキーワード入力後にクリア処理をして、ウインドウを閉じて終了するまでの一連の流れができることになると思います。
尚、SeleniumVer4.6以前の場合はドライバー設定の方法が違い上記ではエラーとなります。この場合の使用例については以下などに載せています。
以上が要素に入力された値をクリアする方法になります。