XPath表达式非法报错:Selenium InvalidSelectorException问题咨询
XPath语法错误修正
你的XPath表达式存在语法错误,问题出在not @class="totals_row fw-bold ttu Table__TR Table__TR--sm Table__even"这部分:
- XPath中
not是函数,必须用括号包裹要否定的条件,正确写法是not(@class="totals_row fw-bold ttu Table__TR Table__TR--sm Table__even")
修正后的完整表达式:
total_games = driver.find_elements(By.XPATH, '//div[@class="mb5"]/div/div/div/div/div/table/tbody/tr[@data-idx and not(@class="totals_row fw-bold ttu Table__TR Table__TR--sm Table__even")]')
错误原因:原写法违反了XPath的语法规则,not作为逻辑否定操作符,必须通过函数形式调用,直接跟属性判断会被解析器判定为非法表达式,从而抛出InvalidSelectorException。
内容的提问来源于stack exchange,提问作者maxpower8888
相关产品推荐
相关产品推荐

