如何从以下给定标签中检索值

时间:2019-02-12 09:52:33

标签: c# selenium selenium-webdriver pageobjects findby

这来自我们的Web应用程序之一。我想检索值8以将其与数据库中的值进行比较。

Dim HostURL, fileSource, FileDestination As String
    HostURL = "ftp.datacentre.com"
    fileSource = "/country_forecast/CWG_ecop_19021012_United-Kingdom.csv"
    FileDestination = "C:\Development\Test1\newFile.txt"

FtpDownload fileSource, FileDestination, HostURL, 21, "username", "password"

HTML:

[FindsBy(How = How.Id, Using = "p_Power Reactors_planned")]
public IWebElement Planned_PR { get; set; }

string PRPlanned = Planned_PR.GetAttribute("p");

我得到的结果字符串为空。

3 个答案:

答案 0 :(得分:2)

由于“ 8”在给定标记中显示为文本,因此您可以使用string PRPlanned = Planned_PR.Text

来获取它

答案 1 :(得分:0)

您使用错误的命令来检索文本

GetAttribute();用于检索HTML标签的属性值

例如<p class="big" id="p_Power Reactors_planned">

GetAttribute("class");-您将获得价值big

GetAttribute("id");-您将获得价值p_Power Reactors_planned

您必须使用.Text方法来获取必需的文本

例如string PRPlanned = Planned_PR.Text;

根据HTML规则,如果您的元素属于给定标记here下,则可以使用GetAttribute("value");

答案 2 :(得分:-1)

文本 8 <p>标记的 textContext 。因此,您需要使用GetAttribute("innerHTML");方法,如下所示:

[FindsBy(How = How.Id, Using = "p_Power Reactors_planned")]
public IWebElement Planned_PR { get; set; }

string PRPlanned = Planned_PR.GetAttribute("innerHTML");