You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Python Selenium爬取时,点击aria-expanded元素遇异常问题

问题解决:Selenium无法定位动态菜单元素的替代方案

问题场景

使用Python Selenium进行网页爬取,登录成功后需点击id为enlace1的Comercios按钮,展开包含id为enlace1_1的Consultar菜单链接,但多次尝试定位元素均失败。

尝试过的代码及错误

1. 显式等待定位元素

代码:

wait.until(EC.element_to_be_clickable((By.XPATH, "//*[@id='enlace1']")))
driver.find_element(By.ID, "enlace1").click()

错误信息:

TimeoutException: Message: 
Stacktrace:
Backtrace:
    (No symbol) [0x0090DCE3]
    (No symbol) [0x008A39D1]
    (No symbol) [0x007B4DA8]
    (No symbol) [0x007E019F]
    (No symbol) [0x007E03AB]
    (No symbol) [0x0080EE62]
...
    (No symbol) [0x008BC63B]
    BaseThreadInitThunk [0x767C00F9+25]
    RtlGetAppContainerNamedObjectPath [0x77497BBE+286]
    RtlGetAppContainerNamedObjectPath [0x77497B8E+238]

2. 直接定位元素

代码:

enlace1=driver.find_element(By.ID,"enlace1")
enlace1.click()

错误信息:

NoSuchElementException
(No symbol) [0x008BC63B]
    BaseThreadInitThunk [0x767C00F9+25]
    RtlGetAppContainerNamedObjectPath [0x77497BBE+286]
    RtlGetAppContainerNamedObjectPath [0x77497B8E+238]

相关页面HTML结构

<li class="nivel1 ui-accordion-li-fix">
        <a class="nivel1 ui-accordion-header ui-helper-reset ui-state-active ui-corner-top" id="enlace1" href="" role="tab" aria-expanded="true" tabindex="0"><span class="ui-icon ui-icon-triangle-1-s"></span>Comercios</a>
        <ul id="menu1" class="nivel2 ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content-active" role="tabpanel" style="display: block;">
            <li class="nivel2">
                <a class="nivel2" id="enlace1_1" href="" onclick="cargarJava('/odin-war/odin/comercios/query.html');return false;">Consultar</a>
            </li>

解决方案及推测

尝试过通过ID、XPATH、CSS选择器、类名定位enlace1元素均无效,最终发现登录后直接跳转至目标页面URL(即Consultar链接对应的/odin-war/odin/comercios/query.html)可完成后续爬取操作。

推测原问题由页面动态属性变化或网站特殊结构设计导致,Selenium无法正常识别或交互目标菜单元素。

内容的提问来源于stack exchange,提问作者user21139164

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 07:43:21