【发布时间】:2015-12-09 14:39:18
【问题描述】:
我正在尝试在 CasperJS 中自动上传图片。
site 上的表单似乎正在使用 plupload。单击按钮后,将出现一个文件浏览器对话框,可以在其中选择多个图像。
如何使用 CasperJS 处理此文件上传表单?是否可以一次上传多张图片?
【问题讨论】:
标签: javascript forms file-upload phantomjs casperjs
我正在尝试在 CasperJS 中自动上传图片。
site 上的表单似乎正在使用 plupload。单击按钮后,将出现一个文件浏览器对话框,可以在其中选择多个图像。
如何使用 CasperJS 处理此文件上传表单?是否可以一次上传多张图片?
【问题讨论】:
标签: javascript forms file-upload phantomjs casperjs
即使是自定义文件上传小部件也在其 UI 下方使用 <input type="file" ...> 元素。这对于访问客户端计算机上的文件是必要的。
您可以通过直接设置需要上传的文件来绕过小部件 UI。由于 CasperJS 构建在 PhantomJS 之上,因此您可以使用所有 PhantomJS 功能,包括 page.uploadFile(selector, filename)。在你的情况下,看起来像这样:
casper.page.uploadFile("#uploaders input[type='file']", myfilename);
请注意,如果您事先知道文件输入元素名称并且文件输入字段位于表单元素内部,也可以使用所有 casper.fill*() 函数。
【讨论】: