【发布时间】:2020-05-17 19:27:21
【问题描述】:
我想在网站上下载 Excel 文件,但我认为我做错了什么。我有 HTML 代码:
<label class="pager">
<input onclick="excelForm.submit()" type="image" value="Excel" src="/YeniSistem/images/Excel_Document_Icon.png">
</label>
我想使用 Selenium 执行此操作我想使用 C# 单击该输入。我尝试了很多方法,例如:
driver.FindElement(By.XPath(".//html/body/div/div/table/tbody/tr[2]/td/table/tbody/tr[2]/td[2]/div/div/label[2]/input")).Click();
和:
driver.FindElements(By.XPath(".//div[@id='contentContainer']/div/table/tbody/tr[2]/td/table/tbody/tr[2]")).Click();
和:
driver.FindElements(By.XPath(".//input[contains(@value , 'Excel')]")).Click();
我还在 XPath 前面尝试了没有. 的先前代码。请帮我解决这个问题。
【问题讨论】:
-
这里到底有什么问题?点击时是否出现错误?
-
这里的问题是我无法点击 XPath 位置,我收到类似
OpenQA.Selenium.NoSuchElementException: 'no such element: Unable to locate element: {"method":"xpath","selector":".//html/body/div/div/table/tbody/tr[2]/td/table/tbody/tr[2]/td[2]/div/div/label[2]/input"} (Session info: chrome=79.0.3945.130)'的错误 -
你试过XPath:
.//label[@class='pager']/input吗? -
是的,我试过也没有工作。 HTML 中有多个“寻呼机”类。
标签: c# html visual-studio selenium-webdriver xpath