我有一个包含许多列的网格表,我必须获取第一列值的文本。网格表结构如下所示
有一个用于完整行的类,然后在该类内部,每个列单元格都具有相同的类
a = df2.to_numpy()[..., None, None]
b = df1.to_numpy()[None, None, ...]
df2.assign(Checked=(a == b).any(axis=(1, 2, 3)))
Site_x Site_y Checked
0 CTBX3901E CTBX3901 True
1 CTB3901 CTB3901E True
2 CTBZ3901E CTBZ3901 True
3 CTBY3901E CTB3901 True
4 MADX6379E MADX6379 False
像这样,大约有1000行。我必须遍历每一行并获取仅日期列值的文本
预期:我应该在数组中获取日期列类的文本
答案 0 :(得分:1)
如果我理解正确,那么您要遍历每一行并获取datecolumn的值。从您的代码中,我看到行和列的类名显示为不同的类名。但我认为它们是相同的。如果您可以从源代码中复制代码,则将更有帮助。无论如何,以最少的信息,我有以下代码可以读取每一行中的dateColumn并输出该列中的数据。
const datecolumns = element.all(by.css("div.row .datecolumn"));
//If there is another child tag below datecolumn and the text is in that tag then you need to include that class in the above element finder
datecolumns.map(function (eachDateColumn, index) {
eachDateColumn.getText().then(function (dateValue) {
console.log("Date value in column " + index + " is " + dateValue)
})
})
更直接的方法:
const datecolumns = element.all(by.css("div.row .datecolumn")).getText();
答案 1 :(得分:0)
正好是1000行?它们以<div class = 'row1'>
开始并以<div class = 'row1000'>
结尾吗?
在这种情况下,元素定位符本身应为:
element(by.css('.row1 .datecolumn2'));
然后,如果要遍历所有行,只需像这样更改它:
for (i= 1; i < rows.length; i++) {
element(by.css('.row' + i + '.datecolumn2')).getText();
// here you do whatever you need to do with the text
}