selenium在python中通过类名查找元素时挂起

selenium在python中通过类名查找元素时挂起,python,selenium,Python,Selenium,在我使用find元素的某些地方,它会挂起2-3分钟甚至更长时间。页面已完全加载,没有等待,只有一行是这样的: menu = self.driver.find_elements_by_class_name("text") 有没有办法避免这么长的等待时间?原因是什么? 我正在使用Python2.7、selenium 2.44.0和FF 33.1 谢谢 有没有办法避免这么长的等待时间?原因是什么 根据您的评论,您正在测试的应用程序确实没有完全加载。您确认,您所说的手动加载需要2-3分钟 避免长时间等

在我使用find元素的某些地方,它会挂起2-3分钟甚至更长时间。页面已完全加载,没有等待,只有一行是这样的:

menu = self.driver.find_elements_by_class_name("text")
有没有办法避免这么长的等待时间?原因是什么? 我正在使用Python2.7、selenium 2.44.0和FF 33.1

谢谢

有没有办法避免这么长的等待时间?原因是什么

根据您的评论,您正在测试的应用程序确实没有完全加载。您确认,您所说的手动加载需要2-3分钟

避免长时间等待的唯一方法是改进正在测试的应用程序的优化。2-3分钟是一个巨大的等待时间,任何不得不等待的客户都会变得非常不耐烦


等待时间的原因是应用程序优化或缺乏优化,或服务器性能。如果你能改进这些部件,那么等待时间就会缩短

你说它会挂2-3分钟。之后它会做什么?当2-3分钟的菜单包含正确的webelements 10个条目后,它是否退出,或者它是否实际与菜单交互。当您手动执行此操作时,会发生什么情况?手动执行这些步骤是否需要2-3分钟?是的,相同的结果示例代码中的单行没有显示Selenium实际等待的情况。您可以使用find_elements_by_class_name和复数形式的元素。当您使用任何find_元素时,Selenium实际上不会等待。。。同样,复数方法。如果没有与查询匹配的元素,那么它将立即返回一个包含0个元素的列表。所以你说你有挂起2-3分钟的代码,但实际上你没有显示挂起那么长时间的代码。谢谢你的回答,我在一行中检查是否完整:self.driver.execute\u scriptreturn document.readyState==“complete”它挂起在find元素之前,你是对的。