Python Selenium click()

2024-10-02 18:23:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图点击导航标签“MPass”,但是,它不起作用

https://www.gv.com.sg/GVMovies

nav = driver.find_element_by_css_selector('ul.nav.nav-tabs')
tabs = nav.find_elements_by_css_selector('a.ng-binding')[1]

tabs.click()

error

[概览][2]


Tags: httpscombywwwdriver标签findsg
3条回答

尝试使用完整XPath

我正在使用Firefox web驱动程序(您可以从here下载):

from selenium import webdriver

site = 'https://www.gv.com.sg/GVMovies'

#providing driver path
driver = webdriver.Firefox(executable_path = 'C:\Drivers\geckodriver.exe')


driver.get(site)
try:
    driver.find_element_by_xpath("/html/body/div[3]/div[2]/div/div/div[2]/div/ul/li[2]/a").click()
except Exception as e:
    pass  

您可以使用M Pass Movies调用a标记上的click,并绕过前面的元素

nav = driver.find_element_by_css_selector('ul.nav.nav-tabs')
tab = nav.find_element_by_xpath("//*[text()='M Pass Movies']")
driver.execute_script("arguments[0].click();", tab)

确保您正在等待元素加载并在dom中可见

然后使用find_element_by_css_selector

selector = driver.find_element_by_css_selector("li[select=\"changeTab('M Pass Movies')\"]")
selector.click()

selector = driver.find_elements_by_css_selector("li[class='tab-pane ng-isolate-scope']")[0]

相关问题 更多 >