sfzs1983 2017-03-18 07:56 采纳率: 0%
浏览 6392

Python selenium WebDriverWait中until自己写的方法为什么只调用一次

大致代码如下,until里的方法是自己写的len_is_true,判断输入框输入的内容长度为5,我在方法里打印了'循环方法',貌似len_is_true方法只调用了一次,并不是在30秒内每0.5秒调用一次,哪位大侠知道原因,多谢。

def len_is_true ():
print '循环方法'
js = 'return document.getElementById("welLogin_username").value'
username = driver.execute_script(js)
print username
return lambda x: True if len(username) ==5 else False

mobileEmulation = {'deviceName': 'Apple iPhone 6'}
options = webdriver.ChromeOptions()
options.add_experimental_option('mobileEmulation', mobileEmulation)

driver = webdriver.Chrome(executable_path='chromedriver.exe', chrome_options=options)
driver.get('xxxxxxxxxxxxxxx')
try:

WebDriverWait(driver, 30, 0.5).until(len_is_true())

except TimeoutException:
print ‘TimeoutException’

  • 写回答

3条回答 默认 最新

  • sfzs1983 2017-03-18 08:10
    关注

    图片说明
    我把代码改了下,如图所示,如果30秒内每0.5秒执行一次,打印出的日志应该有很多‘循环方法’才对

    评论

报告相同问题?

悬赏问题

  • ¥20 蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏