如何使用css选择器获取信息并存储它变量

时间:2017-11-17 10:18:57

标签: c# selenium selenium-webdriver

我想使用css选择器验证寄存器中的值

[FindsBy(How = How.CssSelector, Using = "#grid_cases > table > tbody")]
private IWebElement CaseListGrid;

我必须返回WebElements值并将其存储到字符串

public List<CaseListEntry> GetCaseListEntries()
{
    CaseListGrid.
    return null;         
}

2 个答案:

答案 0 :(得分:0)

您可以使用以下命令从CaseListGrid元素中获取文本:

WITH cte AS (
        SELECT SrNo, TextCol
            , ROW_NUMBER() OVER (ORDER BY (select NULL)) rn
        FROM yourTable
     )
UPDATE cte
SET SrNo = rn;

但是你正在检索一个tbody,其中可能没有任何文本。

检索CaseListGrid元素后,您可以执行以下操作来检索 tbody中的所有CaseListGrid.Text; 标记

td

之后,循环遍历元素并检索文本:

CaseListGrid.FindElements(By.TagName("td"));

答案 1 :(得分:0)

它有效

 var CaseGridTrs = CaseListGrid.FindElements(By.XPath(".//tr"));
        var entryList = CaseGridTrs.Select(x => 
        {
            var CaseEntryTds = x.FindElements(By.XPath(".//td"));
            return new CaseListEntry
            {                                     Register = CaseEntryTds.ElementAt(0).FindElement(By.XPath(".//a")).Text,