我正在尝试自动下载 excel 文件。这是我第一次使用Selenium,我通常不使用Python编码,所以可能是一个基本问题。
我已经登录并勾选了一个复选框,但倒数第二步是点击一个下载按钮,这似乎是一个。我看了看堆栈溢出和谷歌我可以找到类似的问题,但我不能找到一个解决方案来修复我的问题。我通常使用
.find_element_by_xpath
这适用于其他所有内容,但不适用于下载按钮。我添加了一个等待以确保页面已完全加载,但它并没有使它变得更容易。
#Downlod checked Catalogue
CatDownloadBtn = driver.find_element_by_xpath('/html/body/div[3]/form/div[2]/input[1]')
CatDownloadBtn.click()
我已经厌倦了 xpath 和完整的 xpath 都没有工作。
我得到以下错误。
selenium . common . exceptions . elementclickinterceptedexception:Message:Element click interceptedexception:元素在点(213,17)处不可点击。其他元素将接收点击:...
督察 -
<div class="col-md-offset-0 col-md-10 downloadBtn">
<input name="submit" type="submit" class="btn btn-default" value="Download Catalogues">
<input name="submit" type="submit" class="btn btn-default" value="Download Attributes">
<input name="submit" type="submit" class="btn btn-default" value="Download Enhanced Data">
</div>
ElementClickInterceptedException是一个异常,当一些其他元素出现在另一个元素或其他元素前面时,会阻止真正的人类单击(例如,当您需要向下滚动时)。你可以尝试的解决方案很少。
CatDownloadBtn = driver.find_element_by_xpath('/html/body/div[3]/form/div[2]/input[1]')
driver.execute_script('arguments[0].click()', CatDownloadBtn) # Performs a Javascript click
您可以在单击之前检查是否需要向下滚动。
driver.execute_script("window.scrollTo(0, Y)") # Y is the height
可以使用以下方法按值选择按钮:
CatDownloadBtn = driver.find_element_by_xpath('//input[@value="Download Catalogues"]')
指示无法正确执行单击,因为目标元素以某种方式被遮挡。
尝试如下JS脚本示例
ele = driver.find_element_by_xpath("//input[@class='button']")
driver.execute_script("arguments[0].click();", element)
如果不起作用,请尝试等待
wait.until(ExpectedConditions.elementToBeClickable(元素));
这通常是因为您尝试单击的元素不可单击,有多个“构建块”来创建一个工作元素,此错误通常是因为您尝试单击错误的“块”而发生的。
解决这一问题的一种方法是尝试单击不同的元素,无论是向上一级还是向下一级,我认为在您的情况下,它应该更高,因为“输入”通常不可单击。
由于我不知道该网站是什么,所以我无法提供具体信息
我尝试通过selenium(python)从GoogleTrend下载CSV数据。 在前面,我尝试打印源页和提取数据,我以后想要。它在一段时间内起作用,但现在不起作用了。 导入sys导入时间 从selenium导入webdriver.Common.Keys导入selenium.webdriver.Common.Action_Chains导入selenium.webdriver.Support.UI
我的目标是使用selenium python来点击这个超链接元素,下面是我尝试过的3个解决方案,没有一个有效。 解决方案1: 错误消息:selenium.common.exceptions.javascriptException:消息:javascript错误:无法读取未定义的属性“click” 那么,每个解决方案都出了什么问题呢?我怎么才能让它起作用?
我希望上面的xpath的输出能够定位selenium中的元素,但实际上我得到了错误。
问题内容: 我的代码中有如下所示的元素: 我想设置它的值,所以我用它的xpath创建了一个web元素: 但是现在我看不到设置值的选项… 问题答案: 使用代替 要么 或(使用javascript) 或使用JavascriptExecutor 要么 希望它能对您有所帮助:)
问题内容: 以下是HTML结构: 并且有一个config.py供用户输入。如果用户在config.code中输入23456,Selenium python如何选择第二个对象?我用来查找和选择对象,但是只能选择第一个对象,即 Code =‘12345’ 。我尝试使用,但这是元素而不是元素。任何人都可以帮助..... 问题答案: 要根据用户使用Selenium和python的输入来定位元素,您需要为引
我将取消使用的网页。此applet生成一个选择标记,我想单击其中的一个选项。 在运行时确实找到了该元素:
下面是一个危险的find元素,因为索引可能会改变