用selenium调试的时候,有遇到这个错误:
selenium.common.exceptions.InvalidSelectorException: Message: invalid selector: An invalid or illegal selector was specified
这个错误,我遇到的有三种原因:
①
定位器:CSS_SELECTOR 方法:[@ = ]
定位属性:class
错误原因:定位的WebElement有多个class属性值(class=后以空格分隔的几个就是几个class属性值),但直接写空格[class='x y'])
修改方法:Ⅰ将多个class属性用.方法写多个(.x.y)
Ⅱ只写(查找)独特的class [class='x'])
Ⅲ若class均不唯一,前后补一个同时查找的属性,使其唯一
备注:XPATH反而要把多个class属性值用空格隔开的方式全部写出来才合法。
②
定位器:CSS_SELECTOR 方法:#
定位属性:id
错误原因:用#定位id,但数字开头
修改方法:[id='数字开头的字符串']
③
定位器:CSS_SELECTOR 方法:[@ = ](误) (如[@typeq='x'])
定位属性:任意属性
错误原因:在中括号里面加了个"@",这是XPATH定位任意属性的方式文章来源:https://www.toymoban.com/news/detail-759890.html
修改方法:[ = ] (例子:[typeq='x'])文章来源地址https://www.toymoban.com/news/detail-759890.html
到了这里,关于Selenium 报错:selenium.common.exceptions.InvalidSelectorException: Message: invalid selector: ......的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!