Python 如何通过xpath提高查找元素的速度

Python 如何通过xpath提高查找元素的速度,python,selenium,selenium-webdriver,selenium-chromedriver,Python,Selenium,Selenium Webdriver,Selenium Chromedriver,我正在做一个硒项目。在该项目中,我打开多个沃尔玛页面,检查div中是否有nav。如果nav存在,则执行其他操作,继续下一页 现在,如果导航存在于页面中,程序能够定位导航。但是,如果导航不存在,则程序需要很长时间才能与代码一起继续 是否有任何方法可以提高程序搜索代码的速度 这是我的密码 nav_button_path = "//div[@class='modal modal--active-fill responsive-modal prod-fulfillmentOptionsMod

我正在做一个硒项目。在该项目中,我打开多个沃尔玛页面,检查div中是否有
nav
。如果
nav
存在,则执行其他操作,继续下一页

现在,如果导航存在于页面中,程序能够定位导航。但是,如果导航不存在,则程序需要很长时间才能与代码一起继续

是否有任何方法可以提高程序搜索代码的速度

这是我的密码

nav_button_path = "//div[@class='modal modal--active-fill responsive-modal prod-fulfillmentOptionsModal prod-AccessFulfillmentModal prod-AccessSlidePanel']//nav[@class='persistent-subnav']"
nav_button = driver.find_elements_by_xpath(nav_button_path)

if not nav_button:
    ...

else:
    ...
在上述代码中,如果找到导航,则运行
else条件
。这运行得很快。但是如果导航不存在,程序在网页中搜索导航需要很长时间,因此如果条件为
if
,则需要很长时间才能运行


提前感谢

我认为延迟的原因是您使用的隐含等待。它应该可以解决您的问题:

driver.implicitly_wait(0)

您可以尝试更新xpath值以提高性能-如果您发布HTML代码,我们可能会帮助您。@AlinStelian。请单击
More delivery&pick options
并检查开发人员控制台
find_elements_by_xpath
之后是否添加此选项?你能解释一下这是怎么回事吗?我试过了。但这似乎并没有降低成本time@Sashaank您需要在创建驱动程序后进行设置。默认值为0,因此仅当设置了某个值时,才会影响测试。我建议你这么做。@Sashaank尝试简化定位器,例如:
.modal content.persistent subnav
我试过你说的。问题是我最初在代码的其他地方添加了
驱动程序。隐式地等待(10)
。现在可以了。谢谢