如何使用Python正确单击Selenium中的元素?

时间:2015-07-01 00:35:26

标签: python selenium selenium-webdriver

我正在尝试点击一个元素,例如" AH",在此page中。我使用以下代码。

from selenium import webdriver

url = "http://www.oddsportal.com/soccer/brazil/serie-a/internacional-santos-vcGTTAKH/"
driver = webdriver.Firefox()
driver.get(url)
element_to_click = driver.find_element_by_link_text("AH")
element_to_click.click()

问题是在点击元素并加载新页面后,它会返回到第一页。

2 个答案:

答案 0 :(得分:1)

关注元素并调用click_and_hold动作(为我工作):

from selenium.webdriver import ActionChains

actions = ActionChains(driver)
actions.move_to_element(element_to_click).click_and_hold(element_to_click).perform()

答案 1 :(得分:1)

alecxe,这有效。

只是添加到这里的讨论

enter image description here

因此,在鼠标按下时,它正在为uid(4)调用onClick,当我们对该元素进行正常点击时,我们没有意识到它在mouse down上工作而不是在mouse click上。

这就是为什么当我们使用webdriver对它执行element.click()时,这不起作用,当我们使用Actions类来使用click_and_hold模拟鼠标时,它可以工作!!