我是Selenium C#automation的新手。尝试在网上找到但没有得到任何帮助。 HTML代码看起来像这样。我需要找到该元素,然后使用CSS单击它。该网站仅在IE上运行。
<tbody>
<tr class="t-state-selected">
<td>Purchased</td>
<td class="">768990192</td>
答案 0 :(得分:1)
我知道网络链接可能会消失,但是在尝试使用Selenium的C#WebDriver找出如何定位元素时,我会使用一些:
https://automatetheplanet.com/selenium-webdriver-locators-cheat-sheet/
https://saucelabs.com/resources/articles/selenium-tips-css-selectors
https://www.packtpub.com/mapt/book/web_development/9781849515740/1
底线是您通过id,class或XPath进行选择。可以使用F12浏览器工具直接在页面上测试其中的每一个。例如,要查找上述问题的第一条评论,您可以在控制台中尝试:
$x("//div[@id='mainbar']//tbody[@class='js-comments-list']/tr")
Here's another SO post with a quick and dirty answer
here is the official documentation from Selenium on how to locate UI elements。
答案 1 :(得分:1)
要点击动态数字 768990192
,我们必须按如下方式构建CssSelector
:
driver.FindElement(By.CssSelector("tr.t-state-selected td:nth-of-type(2)")).Click();
答案 2 :(得分:0)
你真的没有给我们很多工作信息。我会尽力适应。尽管提供的HTML不足以显示格式,但您没有提供当前解决方案的任何代码。
string url = "https://www.google.com";
IWebDriver driver = new InternetExplorerDriver();
driver.Navigate().GoToUrl(url);
driver.FindElement(By.XPath("//tr[@class='t-state-selected']")).Click();
这个小代码片段。
创建Internet Explorer驱动程序。
转到您选择的网址。
然后单击具有等于&#34; t-state-selected&#39;的类的表行。我的猜测是全部或没有表行。