主要内容
- 問題描述
- 解決方案
-
- 通過全選的方法清除資料
- 通過執行js的方法清除資料
- 示例代碼
問題描述
使用clear()方法沒反應。或者清除了文本,然後在執行輸入指令時,前面清除的文本又會出現。
解決方案
通過全選的方法清除資料
element.send_keys(Keys.CONTROL, "a")
element.send_keys(Keys.BACKSPACE)
通過執行js的方法清除資料
js = 'document.querySelector("#kw").value="";'
driver.execute_script(js)
示例代碼
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("http://www.baidu.com/")
element = driver.find_element_by_id("kw")
element.send_keys("開始示範通過 Ctrl+A -> Backspace 的方法清掉資料")
time.sleep(1)
# 通過全選( Ctrl+A -> Backspace )的方法
element.send_keys(Keys.CONTROL, "a")
element.send_keys(Keys.BACKSPACE)
time.sleep(1)
element.send_keys("接下來示範通過 js 的方法清掉資料")
time.sleep(1)
# 通過 js 的方法
js = 'document.querySelector("#kw").value="";'
driver.execute_script(js)
time.sleep(2)
driver.quit()