首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium (Java) - Chrome Headless -无法上载文件

问Selenium (Java) - Chrome Headless -无法上载文件
EN

Stack Overflow用户
提问于 2019-12-26 12:29:59
回答 1查看 553关注 0票数 0

需要在无头模式下在Selenium脚本中上传文件逻辑相关的输入。实现了Robot类来模拟键盘命令,但它只能在非headless模式下工作。

下面是upload按钮的外观:

​

​

单击upload resume会显示一个弹出窗口按钮。在无头模式下,点击"Upload Resume“按钮后,没有弹出窗口(根据截图)。

upload按钮周围的页面源代码:

​

代码语言:javascript
复制
<div class="resume_upload_block">
<div id="resumeFile" class="controls-dz dropzone dz-clickable registration_groupl resume_drag_drop">
<div class="dz-default dz-message">
<div class="fa fa-upload"></div>
<label for="file-upload" class="custom-file-upload" title="Upload Resume"> 
<input type="text" name="resume" id="resume" value="" placeholder="Browse *" style=""/>
</label>
</div>
<div class="clearfix">
</div>
</div>
</div>

​

研究了AutoIT和Sikuli工具等选项。这些选项都没有提供关于如何在无头模式下运行的信息。

EN

回答 1

Stack Overflow用户

发布于 2020-01-07 15:08:17

很抱歉我回答得太晚了。在搜索了一下之后,我发现真正的文件输入不在upload按钮下。代码如下:

代码语言:javascript
复制
WebElement inputResume = webDriver.findElement(By.className("dz-hidden-input"));
inputResume.sendKeys("/full/path/to/your/file"); // For example: /home/minhdao/Downloads/resume.pdf

我还创建了一个gist。如果你想要一个完整的项目,可以在没有配置的情况下执行,请随时留言。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59483839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档