【发布时间】:2021-07-30 09:25:40
【问题描述】:
我正在尝试找到一个标签并在我的网页上单击它。但是,我的代码不起作用:
ActionChains(driver).move_to_element(driver.find_element_by_xpath("//*[@id='tab_bd3ae39d-f956-49ab-b7bd-f13507de9351']/div[2]/div")).perform()
additionaldata_ele= driver.find_element_by_xpath("//*[@id='tab_bd3ae39d-f956-49ab-b7bd-f13507de9351']/div[2]/div").click()
HTML正文如下:
<li class="WJX1 WLV1" id="tab_015ba30c-af6c-4c9a-ac34-f77ee00805b6" role="tab" aria-controls="tabPanel_16845ddd-961b-4581-89da-a6a4e6080930" data-automation-id="tab" aria-selected="false"><div class="WGX1"></div><div class="WEX1"><div class="gwt-Label WLX1" data-automation-id="tabLabel">Additional Data</div></div></li>
我得到了错误 -
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id='tab_bd3ae39d-f956-49ab-b7bd-f13507de9351']/div[2]/div"}
我猜原因是当我试图找到元素时,它没有出现在 DOM 上,所以我应该实现 WebDriverWait 直到元素可见。所以我尝试了 WebDriverWait,但也没有用。
非常感谢所有的回答和回复!
第二版: 这是网页,抱歉我不能分享链接,这是一个内部网页,需要PSW:
【问题讨论】:
-
请添加指向网页的链接并说明您试图访问的元素是什么?
-
I'm trying to locate a tab是什么意思? - 这是否意味着元素在新选项卡或窗口中? -
感谢大家的cmets。这是一个内部网页,需要PSW,所以我添加了一个页面截图,希望对您有所帮助。
-
这不是一个新窗口。它是网页上的一个标签,当我点击这个标签时,网页的一部分会被刷新并出现新的内容。