我正在尝试使用硒从x路径表达式中选择日历日。我相当有信心X路径是正确的,但是很明显,有些事情是不对的。
cal_day = ['1']
for day in cal_day:
expression = f"//div[@class='datepicker-days']/table/tbody/tr/td/[contains(@class, 'day') and text() = '{day}']"
reverse_day_select = browser.find_elements_by_xpath(expression)[0]
reverse_day_select.click()
执行脚本后,我在命令提示符下收到以下错误:
selenium.common.exceptions.InvalidSelectorException:消息:无效选择器:无法使用xpath表达式// div [@ class ='datepicker-days'] / table / tbody / tr / td / [contains( @class,'day')和text()='1'],因为存在以下错误: 语法错误:无法在“文档”上执行“评估”:字符串“ // div [@ class ='datepicker-days'] / table / tbody / tr / td / [包含(@class,'day')和文本()='1']'不是有效的XPath表达式。 (会话信息:chrome = 75.0.3770.100)
答案 0 :(得分:0)
需要很少的校正。
expression = f"//div[@class='datepicker-days']/table/tbody/tr/td[contains(@class, 'day') and text() = '{day}']"