python+selenium 元素被定位到而且click()也提示执行成功,但是页面就是没有变化和跳转。
如果多次定位和click(),有时候会跳转。
我遇到很多次就是很郁闷,有人说,操作太快的,页面的元素还没加载出来,
我觉得这是不存在的的,因为我用了隐式等待,driver.implicitly_wait(10)。
最后我我发现,在定位元素之前加上sleep(1),这个问题就完美的被解决了。
问题基本定位到了。
原因是, WebElement.click() 之后,没有留足够的时间,就把页面切走或关闭了。 click() 之后,应该留有足够的时间,让 browser 客户端执行 JS 代码,再把请求发到服务端。