C#Selenium-如何单击此元素?

C#Selenium-如何单击此元素?,c#,selenium,selenium-webdriver,selenium-chromedriver,C#,Selenium,Selenium Webdriver,Selenium Chromedriver,如何单击此元素? <a class="_eszkz _l9yih" href="#" role="button" aria-disabled="false"> <span class="_8scx2 coreSpriteHeartOpen">XYZ</span></a> string element = "???" driver.FindElement(By.XPath(element)).Click(); 您可以通过多种方式确定要单击的图元

如何单击此元素?

<a class="_eszkz _l9yih" href="#" role="button" aria-disabled="false">
<span class="_8scx2 coreSpriteHeartOpen">XYZ</span></a>
string element = "???"

driver.FindElement(By.XPath(element)).Click();

您可以通过多种方式确定要单击的图元。您只需确保选择了一些属性或值,这些属性或值提供了要单击的确切元素,而不是其他具有相同类名的元素(例如)

因此,您必须确定如何识别正确的示例

用它自己的类名?使用:

By.XPath("//a[@class='_eszkz _l9yih']")
按孩子的班级?使用:

By.XPath("//span[@class='_8scx2 coreSpriteHeartOpen']/..")
由其子对象的文本内容决定?使用:

By.XPath("//span[contains(., 'XYZ')]")
您还可以通过将XPath存储在类型为
的变量中,因此不必使用:

string element = "//a[@class='_eszkz _l9yih']";
你可以用

By element = By.XPath("//a[@class='_eszkz _l9yih']");
driver.FindElement(element).Click();

您可以尝试此XPATH->element='//a/span[contains(text(),“XYZ”)]@rehanshkkalgar-它不起作用!driver.FindElement(By.XPath(“//span[@class='''u 8scx2 coreSpriteHeartOpen']”)。单击();工作!谢谢没问题,很高兴我能帮忙