我已在Yahoo mail创建了草稿,然后转到此草稿信页面。 现在我想使用C#和Selenium Webdriver获取Subject字段的值。 我使用了以下代码,但它返回空字符串:
string subjectLocator = "//*[@id='subject-field']";
string actualSubject = driver.FindElement(By.XPath(subjectLocator)).GetAttribute("Value");
使用Text属性而不是GetAttribute
方法也无济于事。
如何使用Selenium
Webdriver
和C#
获取yahoo草稿中主题字段的值?
http://prnt.sc/bye5ae - HTML代码
答案 0 :(得分:1)
当我看到您正在使用以.GetAttribute("Value")
为主题字段获取值时,此处唯一的问题是将属性属性传递为Value
,value
应该v
表示string actualSubject = driver.FindElement(By.Id("subject-field")).GetAttribute("value");
应该是小写的,所以你应该尝试如下: -
WebDriverWait
或者使用DOM
等待var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement element = wait.Until(ExpectedConditions.ElementExists(By.Id("subject-field")));
string actualSubject = element.GetAttribute("value");
上的元素出现,如下所示:
'linkedin' => [
'client_id' => '[hidden-linkedin-client-id]',
'client_secret' => '[hidden-linkedin-client-secret]',
'redirect' => 'http://localhost:8888/auth/linkdin/callback',
],
'google' => [
'client_id' => '[hidden-google-client-id]',
'client_secret' => '[hidden-google-client-secret]',
'redirect' => 'http://localhost:8888/auth/google/callback',
],
我测试了它,它对我有用。
希望它有帮助...:)