Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Selenium-在类后查找下一个元素_C#_Selenium_Automated Tests - Fatal编程技术网

C# Selenium-在类后查找下一个元素

C# Selenium-在类后查找下一个元素,c#,selenium,automated-tests,C#,Selenium,Automated Tests,我对Selenium很陌生,经常从网站上获取产品信息。一切都是合法的:) 我正在尝试在找到class='description'的p之后获取p中的文本。我怎样才能得到P的值?架构如下所示 <p class="description"></p> <p>...........</p> <!-- I need this tag's text --> ….. 或者,我想添加HTML树来定位我想要的p 我有下面的代码来获得带有class=

我对Selenium很陌生,经常从网站上获取产品信息。一切都是合法的:)

我正在尝试在找到class='description'的p之后获取p中的文本。我怎样才能得到P的值?架构如下所示

<p class="description"></p>
<p>...........</p> <!-- I need this tag's text -->

…..

或者,我想添加HTML树来定位我想要的p

我有下面的代码来获得带有class=“description”的p,但是如何获得下一个呢

IList<IWebElement> aciklama = driver.FindElements(By.CssSelector(".content .urun_detay .padding20 .white > .row > .col-md-6 > .aciklama"));
IList aciklama=driver.FindElements(By.CssSelector(“.content.urun_detay.padding20.white>.row>.col-md-6>.aciklama”);

您可以使用
~
CssSelector

IList<IWebElement> aciklama = driver.FindElements(By.CssSelector(".content.urun_detay.padding20.white > .row > .col-md-6 > .aciklama ~ p"));
IList aciklama=driver.FindElements(通过.CssSelector(“.content.urun_detay.padding20.white>.row>.col-md-6>.aciklama~p”);
您可以使用
标记或class、id等属性


顺便说一下,在
.content.urun_detay.padding20.white
中,您正在查找一个类为
white
的元素,它是类为
padding20
的元素的死者,以此类推。在
.content.urun\u detay.padding20.white中,如果没有空格,您将查找包含所有这些类的元素。

您可以使用
~
获得与
CssSelector

IList<IWebElement> aciklama = driver.FindElements(By.CssSelector(".content.urun_detay.padding20.white > .row > .col-md-6 > .aciklama ~ p"));
IList aciklama=driver.FindElements(通过.CssSelector(“.content.urun_detay.padding20.white>.row>.col-md-6>.aciklama~p”);
您可以使用
标记或class、id等属性


顺便说一下,在
.content.urun_detay.padding20.white
中,您正在查找一个类为
white
的元素,它是类为
padding20
的元素的死者,以此类推。在不带空格的
.content.urun\u detay.padding20.white
中,您正在查找包含所有这些类的元素。

+
下一个同级操作符

IList<IWebElement> aciklama = driver.FindElements(By.CssSelector(".aciklama + p"));
IList aciklama=driver.FindElements(By.CssSelector(“.aciklama+p”);

更多信息

+
下一个兄弟姐妹的操作员

IList<IWebElement> aciklama = driver.FindElements(By.CssSelector(".aciklama + p"));
IList aciklama=driver.FindElements(By.CssSelector(“.aciklama+p”);
更多信息请尝试使用以下方法:

IList<IWebElement> aciklama = driver.FindElements(By.Xpath("//p[@class='aciklama']/following-sibling::p"));
IList aciklama=driver.FindElements(By.Xpath(“//p[@class='aciklama']]/以下同级::p”);
尝试使用以下方法:

IList<IWebElement> aciklama = driver.FindElements(By.Xpath("//p[@class='aciklama']/following-sibling::p"));
IList aciklama=driver.FindElements(By.Xpath(“//p[@class='aciklama']]/以下同级::p”);

@ArifYILMAZ顺便说一句,我猜
class=“description”
class=“aciklama”
是同一个元素?@ArifYILMAZ更新了我的答案。@ArifYILMAZ顺便说一句,我猜
class=“description”
class=“aciklama”
是同一个元素?@ArifYILMAZ更新了我的答案。