使用seleniumpython单击Javascript链接

2024-06-28 20:19:53 发布

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

我需要点击这个网站上的“Visualizar cruzeiros”按钮:https://www.disneytravelcenter.com/MIN-000000000031063/sites++disney-cruise-line++cruises-destinations++alaska++view-sailings++view-sailings/

不幸的是,我不能简单地使用:

visualizar = driver.find_element_by_css_selector('#jb-card-txt-blk-redirect-link-zone-' + zona + 'night-' + str(c)+ '.redirectLink') visualizar.click()

或使用:

visualizar= driver.find_element_by_class_name('redirectLink')
visualizar.click()

或使用:

visualizar= driver.find_element_by_xpath('//*[@id="jb-card-txt-blk-redirect-link-zone-' + zona + 'night-' + str(c) +'"]')
visualizar.click()

那我怎么按这个按钮呢

OBS:“zona”和str(c)是循环变量,但实际上它们不会改变代码的结果


Tags: txtviewbydriverelementfindcard按钮
2条回答

找到了我问题的答案:

button = driver.find_elements_by_xpath('//*[@id="jb-card-txt-blk-redirect-link-zone-' + zona + 'night-' + str(c) + '"]')[2]
button.click()

您尝试过使用xpath//a[contains(text(),'Visualizar cruzeiros')吗?这应该返回多个元素,您需要获取第二个元素。
尝试用seleniumide编写一个测试用例,它可能会提示您如何访问元素

相关问题 更多 >