[英]Is there any way to upload file using selenium in headless chrome?
[英]Selenium (Java) - Chrome Headless - Unable to upload the file
需要与在无头模式下在 Selenium 脚本中上传文件逻辑相关的输入。 实现了 Robot 类来模拟键盘命令,但它只能在非无头模式下工作。
这是上传按钮的外观:
单击上传简历,将显示一个弹出窗口按钮。 在无头模式下单击“上传恢复”按钮后,没有弹出窗口(如截图所示)。
上传按钮周围的页面源:
<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 工具等选项。 没有一个选项提供有关如何在无头模式下运行的信息。
对不起,我的回答晚了。 经过一番搜索,我发现真正的文件输入不在上传按钮下。 这是代码:
WebElement inputResume = webDriver.findElement(By.className("dz-hidden-input"));
inputResume.sendKeys("/full/path/to/your/file"); // For example: /home/minhdao/Downloads/resume.pdf
我还创建了一个gist 。 如果您想要一个无需配置即可执行的完整项目,请随时发表评论。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.