正常是我們在清除文本框內容的時候,都會使用 clear() 函數進行清除,但是有時候會出現,清除完成后再點擊查詢時,文本框的內容會再次自動填充,這個時候我們可以選擇以下方式:
#清空查詢條件
driver.find_element_by_id("FORM_NAME").send_keys(Keys.CONTROL, "a")
driver.find_element_by_id("FORM_NAME").send_keys(Keys.DELETE)
全選文本框內容,然后輸入刪除按鍵,問題解決!
web自動化,selenium 無法清空輸入框默認值繼續輸入
有的頁面輸入框自帶默認值,想要修改里面的內容時,先使用clear()再send_keys(),這種方式無法清除只會在默認值后面追加內容,不是我想要的結果
解決方法:
方法一: 先雙擊,后直接send_keys(), 不用clear()
缺陷: 雙擊不一定能選中所有內容
from selenium.webdriver.common.action_chains import ActionChains element = driver.find_element_by_xpath('xpath路徑') ActionChains(driver).double_click(element).perform() element.send_keys('009')
方法二: 通過鍵盤操作全選,然后直接send_keys(), 不用clear()
完美解決
from selenium.webdriver.common.keys import Keys element = driver.find_element_by_xpath('xpath路徑') element.send_keys(Keys.CONTROL, 'a') element.send_keys('009')