selenium+python自动化99-清空输入框clear()失效问题解决

上一篇 / 下一篇  2020-10-27 15:19:39 / 个人分类:python

fromselenium.webdriver.support.uiimportWebDriverWaitfromseleniumimportwebdriverfromselenium.webdriver.supportimportexpected_conditionsasECfromselenium.webdriver.common.action_chainsimportActionChainsfromselenium.webdriver.support.selectimportSelectimporttimeclassBase():# # 作者:上海悠悠,QQ交流群:750815713def__init__(self, driver):self.driver = driverdeffind(self, locator):'''查找元素,loctor = ("id", "kw")'''element = WebDriverWait(self.driver,30,1).until(EC.presence_of_element_located(locator))returnelementdefclick(self, locator):'''点击元素'''self.find(locator).click()defdouble_click(self,locator):'''双击事件'''element = self.find(locator) ActionChains(self.driver).double_click(element).perform()defsend(self, locator, text):'''发送文本'''self.find(locator).send_keys(text)

方法2:JS清空文本框

第二种解决思路,可以用万能的js,只要selenium遇到的坑,都可以用js去解决。

# 作者:上海悠悠,QQ交流群:750815713driver = webdriver.Firefox()driver.get("https://www.baidu.com")baidu = Base(driver)# 输入框loc = ("id","kw")
baidu.send(loc,"yoyo")
time.sleep(3)# # 方法一:双击# baidu.double_click(loc)# # 重新输入# baidu.send(loc, "上海-悠悠")# 方法二:万能的jsjs = 'document.querySelector("#kw").value="";'
driver.execute_script(js)
baidu.send(loc,"上海-悠悠")

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2021-01-18  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 31190
  • 日志数: 94
  • 文件数: 1
  • 建立时间: 2017-04-14
  • 更新时间: 2020-11-17

RSS订阅

Open Toolbar