テキスト入力の要素に対して「clear」を実行することで入力された文字列をクリアすることが出来ます。
「clear」はinput要素とtextarea要素のテキスト入力部分に対してのみ有効となります。
下記のサンプルでは、まずGoogleトップページの検索テキストボックスの要素を取得しています。そしてその要素に対して文字列を入力後、同じ要素を指定して「clear」を実行しています。「clear」を実行することで入力された文字列が消去されていることが確認できます。
文字列の消去は、「send_keys」メソッドで「Keys.BACK_SPACE」を指定することでも実現できます。
説明
◆メソッド ・clear() ◆使用形態 ・element.clear() ◆備考 ・input要素とtextarea要素に対して有効 ◆関連項目 ・キーボード入力をする(特殊キー) ・セレクトタグのオプションをインデックス番号から選択する
サンプル
from selenium import webdriver from selenium.webdriver.chrome import service from selenium.webdriver.common.by import By import time #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に遷移する<図1> driver.get("https://www.google.co.jp") #検索テキストボックスの要素をname属性名から取得 element = driver.find_element(By.NAME, "q") #検索テキストボックスに文字列をを入力 element.send_keys("テキストボックスに入力された値をクリア") #3秒間待つ time.sleep(3) #入力した文字列をクリア element.clear()
※selenium version 4.1.3で動作確認をしています(ブラウザのUIや属性値などが変更された場合、実行結果が異なる可能性があります)