首页 > 解决方案 > 我需要减少执行硒动作链的时间

问题描述

我目前正在使用 Python3 在 selenium 中使用动作链来执行对元素的点击。执行当前所需的两个动作链大约需要 0.6 秒,我需要它们在 < 0.1 秒内执行。

到目前为止,我一直在使用 pyautogui 并将 pyautogui.PAUSE 设置为 0。这使我可以在不到 0.05 秒的时间内完成两次点击,但是因为它实际上是在移动鼠标,所以在该庄园进行测试时我无法使用计算机. 我也无法使用 pyautogui 同时运行多个测试。在整个调试过程中,我得出的结论是瓶颈是执行步骤。

现在纠正我,如果我错得离谱,但据我了解,selenium 似乎应该比 pyautogui 更快,因为它只是跳过一个步骤并直接进入浏览器。因此,我认为硒可能会人为地减慢动作链。如果是这样,有人知道如何阻止它这样做吗?

贝娄,我已经添加了我目前正在使用的代码。每次点击大约需要 0.3 秒。

action_1 = webdriver.common.action_chains.ActionChains(driver)
action_1.move_to_element_with_offset(e, offset[0], offset[1])
action_1.click()
action_1.perform()

[更新]:我将动作链分成单独的动作,发现以下内容:

标签: pythonpython-3.xseleniumselenium-webdriverselenium-firefoxdriver

解决方案


推荐阅读