我试图从" rect"中获取价值。使用c#和selenium的元素,我可以得到" rect"元素但无法查看并使用其值
我需要得到"数据计数"价值和"数据日期"价值
这是如何获取rect元素:
var calendarElements = driver.FindElement(By.Id("contributions-calendar"))
.FindElement(By.ClassName("js-calendar-graph"))
.FindElements(By.TagName("g"));
foreach (var element in calendarElements)
{
var a = element.FindElements(By.TagName("rect"));
}
这是我的html路径:
我需要计算"数据计数"价值,但我不能得到它
答案 0 :(得分:0)
data-count
是一个属性。使用GetAttribute()
方法获取属性值:
var dataCount = element.FindElement(By.TagName("rect")).GetAttribute("data-count");
答案 1 :(得分:0)
我建议稍微修改代码以及@alecxe已经建议的内容:
// loop for calendar element
foreach (var calElement in calendarElements) {
var a = calElement.FindElements(By.TagName("rect"));
// another loop for the list of rect element
foreach (var rectElement in a) {
var dataCount = rectElement.GetAttribute("data-count");
var dataDate = rectElement.GetAttribute("data-date");
//use these two accordingly
}
}