【发布时间】:2026-01-02 16:00:01
【问题描述】:
我是 Selenium 新手,遇到以下情况。
我的html:
<div class="activeThumbnail thumbnail simple animated zoomIn" data-url="/report/sales-vs-price" style="height: 332px;">
<div class="caption">
<p class="thumbReportTitle">
<a href="/report/sales-vs-price">Sales vs Price</a>
</p>
</div>
</div>
我需要在链接中模拟点击,以便它打开报告页面。我根据不同的响应尝试了几个不同的选项(尝试访问链接或文本):
1.这会抛出“元素不可见”的异常
driver.FindElementByCssSelector("a[href*='sales-vs-price']").Click();
2.在这里我尝试修复“不可见”异常,所以现在它不会抛出错误但它也没有做任何事情:
Actions builder = new Actions(driver);
Actions click = builder.MoveToElement(driver.FindElementByCssSelector("a[href*='sales-vs-price']")).Click();
click.Build().Perform();
或
Actions builder = new Actions(driver);
Actions click = builder.MoveToElement(driver.FindElementByXPath("//*[contains(text(),'Sales vs Price')]")).Click();
click.Build().Perform();
3.这会抛出“无法定位元素”的异常
driver.FindElementByPartialLinkText("a[href='sales-vs-price']").Click();
4.或者这个,除了:“元素不可见”:
driver.FindElementByXPath("//*[contains(text(),'Sales vs Price')]").Click();
我不确定我做错了什么...有人知道我是否可以访问 data-url 吗?还是有人有其他想法?
谢谢!
【问题讨论】:
标签: c# selenium selenium-webdriver