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

使用Selenium和Python定位带有动态ID的页面元素

动态ID元素的部分匹配定位方法

完全可以通过ID前缀匹配定位对应的元素,不同场景的实现方案如下:

  • 原生JavaScript场景
    直接用CSS前缀属性选择器[id^="匹配前缀"]即可,^= 是CSS选择器中专用于匹配属性值以指定字符串开头的语法:
    // 获取所有id以start-ads开头的元素
    const targetElements = document.querySelectorAll('[id^="start-ads"]');
    // 仅获取第一个匹配的元素
    const firstTarget = document.querySelector('[id^="start-ads"]');
    
    如果需要限定只匹配div标签的元素,修改选择器为div[id^="start-ads"]即可。
  • jQuery场景
    沿用和原生一致的属性选择器语法即可:
    const targetElements = $('[id^="start-ads"]');
    
  • 自动化测试/爬虫的XPath定位场景
    使用XPath内置的starts-with()函数实现前缀匹配:
    // 匹配所有id以start-ads开头的元素
    //*[starts-with(@id, "start-ads")]
    // 仅匹配div标签的对应元素
    //div[starts-with(@id, "start-ads")]
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 19:06:03