【发布时间】:2019-01-19 08:00:11
【问题描述】:
HTML:
<img src="dash_img/dash-img_07.png">
HTML 图片:
这里没有获取xpath的属性,我尝试通过链接文本但也失败了。
【问题讨论】:
-
你是怎么尝试的?分享您的代码
标签: selenium selenium-webdriver xpath css-selectors webdriver
HTML:
<img src="dash_img/dash-img_07.png">
HTML 图片:
这里没有获取xpath的属性,我尝试通过链接文本但也失败了。
【问题讨论】:
标签: selenium selenium-webdriver xpath css-selectors webdriver
要定位元素,您可以使用以下任一解决方案:
CssSelector:
div.Timesheet li.time-bg > a > img[src='dash_img/dash-img_07.png']
XPath:
//div[@class='Timesheet']//li[@class='time-bg']/a/img[@src='dash_img/dash-img_07.png']
XPath(基于文本查看时间表):
//span[contains(., 'View Timesheet')]//preceding::a[1]/img
【讨论】:
我认为找到它最直接的方法是使用 CSS 选择器
img[src='dash_img/dash-ig_07.png']
或 XPath
//img[@src='dash_img/dash-ig_07.png']
CSS 选择器更快,支持更好,语法更简单,但有时您必须使用 XPath,例如当您想通过包含的文本查找元素时。
但是...我建议您根据图像标签“查看时间表”来查找它,
//span[.='View Timesheet ']/preceding::img[1]
【讨论】:
preceding、parent 等轴... :)
你可以用这个xpath应该能找到它
WebElement temp = driver.findElement(By.xpath("//img[contains(@src,'<img src="dash_img/dash-img_07.png">')]"));
【讨论】:
或者
"//div[@class='list']//a/img"
【讨论】: