【发布时间】:2014-11-01 18:05:00
【问题描述】:
我正在尝试通过 selenium 上传 png。我的问题是,我需要使用的输入对 selenium 不可见,但对用户不可见。在 Selenium 的常见问题解答中,他们告诉我使用 JavascriptExcecutor,例如:
((JavascriptExecutor)driver).executeScript("arguments[0].style.visibility = 'visible'; arguments[0].style.height = '1px'; arguments[0].style.width = '1px'; arguments[0].style.opacity = 1", fileUploadElement);
我过去在 C# 中使用过它,并且它有效,但现在我正在努力将这种用法转换为 python。我会使用document.getElementByName() 函数,但输入没有名称,并且页面上不止一个。解决该问题的最佳方法是什么。我已经试过了
icon = element.find_element_by_css_selector("input")
script_befehl = icon+".style.visibility = 'visible'; "+icon+".style.height = '1px'; "+icon+".style.width = '1px'; "+icon+".style.opacity = 1
但这也不起作用,我遇到了语法错误
【问题讨论】:
-
对 Selenium 不可见但对用户不可见?这是如何运作的?听起来有一个额外的步骤来“让它可见”你没有做。你确定它是隐形的?如果你与之交互,Selenium 会做什么?
标签: javascript python css selenium selenium-webdriver