我正在尝试使用selenium找到这个动态元素(其id的最后一个字符不时改变):
<canvas id="canvas_ganttChart0_1" height="34" width="5371" 500;position:relative;height:34px;width:1281px"="" style="width: 5371.73400959567px;"></canvas>
当我使用Xpath时:
webdriver.find_element_by_xpath("//*[contains(@id, 'canvas_ganttChart')]")
有效。
但是当我使用css选择器时:
webdriver.find_element_by_css_selector("canvas[id*='canvas_ganttChart']")
控制台窗口告诉我canvas [id * ='canvas_ganttChart']是一个无效的css选择器,或者它不会产生WebElement。
奇怪的是,如果我使用以下css选择器:
webdriver.find_element_by_css_selector("canvas[id='canvas_ganttChart0_1']")
可以成功找到此元素。所以这个“*”符号必须有所不同。
有人能发现问题吗?
由于