我想用Selenium WebDriver在谷歌搜索一张图片。我已经编写了一个AutoIt脚本来从驱动器中选择映像。AutoIt脚本不能在chrome上运行,它可以在火狐上运行。
这是我的脚本-
WinWait("[CLASS:#32770]","",5)
ControlFocus("File Upload","","Edit1")
Sleep(2000)
ControlSetText("File Upload", "", "Edit1", "image.jpg")
Sleep(2000)
ControlClick("File Upload", "","Button1");我的Java代码中也没有任何异常。我也下载了适用于chrome的AutoIt扩展,但它不起作用。有人知道原因吗?
发布于 2015-06-19 02:58:46
您是否尝试将控件名称更改为Chrome提供的名称。我相信Chrome将文件上传域识别为“打开”,IE将其视为“选择要上传的文件”。
发布于 2015-08-06 20:24:52
我也有同样的问题。我在执行AutoIT命令之前等待了2秒,现在它可以工作了。
我假设您已经编译了AutoIT脚本,并将.exe文件命名为Upload。下面是我写的java代码-
Thread.wait(2000);
String command ="C:\\Users\\Casper\\Desktop\\Resume\\Upload.exe";
Runtime.getRuntime().exec(command);现在的问题是,为什么我在开始上传之前等待了2秒,答案是,只要你点击浏览器中的上传按钮,操作系统控制框就需要一些时间来打开,但在我们的代码中,我们不断地传递命令,因此文件上传没有任何异常地失败。我只是给java设置了a2的时间,这样操作系统控制窗口就可以打开,然后我就可以执行我的代码了。
发布于 2019-05-31 04:46:27
ControlFocus("Open","","Edit1")
ControlSetText("Open","","Edit1","C:\Import\assesse-import.csv")
ControlClick("Open","","Button1")将“文件上传”更新为“打开”,然后重新编译AutoIT脚本,它应该可以正常工作。
https://stackoverflow.com/questions/27600782
复制相似问题