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

Selenium Python类名定位获取div文本触发InvalidSelectorException报错

报错根因
  • 类名存在字符错配:代码中传入的定位类名为05uR6d(首字符是数字0),但页面实际元素的类名是O5uR6d(首字符为大写英文字母O),WebDriver匹配类名时严格区分字符、大小写,错配内容本身不满足选择器合法性要求。
  • Selenium的find_element_by_class_name方法会内置CSS选择器规则校验,如果类名真的以数字开头,会直接抛出InvalidSelectorException非法选择器异常。
修复方案
  1. 修正类名拼写:将定位代码中的类名替换为与页面HTML完全一致的内容,即可正常获取元素文本:
    driver.find_element_by_class_name("O5uR6d").text
    
  2. 若后续遇到类名确实以数字开头、无法通过find_element_by_class_name定位的场景,可改用CSS选择器定位,对数字开头的类名做转义处理绕过规则校验:
    # 数字开头类名的转义定位示例
    driver.find_element_by_css_selector("div.\\05uR6d").text
    

注意:WebDriver的元素属性匹配无模糊容错,所有属性值、类名都需要和DOM源码完全一致,字符识别错误(比如把大写O误判为数字0、大小写不匹配)是触发这类异常的高频原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.26 08:45:06