selenium处理12306出发地value值修改不成功 | 您所在的位置:网站首页 › 出发地和到达地 › selenium处理12306出发地value值修改不成功 |
不知道你们在使用ui框架编写12306时,有没有遇到过这样的问题. 在使用selenium去编写场景时发现出发地这个input标签,每次都没办法按照你的预期去修改值 然后运行! 这个地方逻辑就是,先定位元素,然后send_keys是输入值,然后利用键盘回车,模拟出真是场景来跳到下一个输入框! 没错!这个方法我在第一次尝试的使用成功了!但是,本着自动化最少成功5次的原则,我从新执行了一遍.发现,没错!!!什么都没动!!也没报错!!但是,出发地变的不对了!! 那么问题到底出在哪里了呢?究竟发生了什么灵异事件,导致了输入文本不一致呢??? 在我无法找到问题的时候,我使用了强制等待 time.sleep(12)没错,你没看错,我强制等待了12秒!每一步,以保证每次运行,我都能看的清楚! 然后…我发现了问题所在 既然找到了原因!那么接下来.就先把输入框文本清除掉,然后输入值,然后在下一步 def input_winds(self, stat_name, end_name): """ 这里建议拆分开来写,不然会出现某些动作同时执行,导致报错""" # 隐形等待,等待元素出现,这里是我自己封装的方法 wait(self.driver, self.query) # 这里加的强制等待,可加可不加,为了好定位我才加的 time.sleep(2) # 这里获取到的是Webdriver对象 a = self.driver.find_element(*self.from_stat) # 清除输入框 a.clear() # 等待1s time.sleep(1) # 再次填写出发地 a.send_keys(stat_name) # 在等待 time.sleep(1) # 回车键 a.send_keys(Keys.ENTER) time.sleep(2)
|
CopyRight 2018-2019 实验室设备网 版权所有 |