我想下载一个网站的xls文件.当我点击链接下载文件时,我会收到一个javascript确认框.我在下面处理它
ConfirmHandler okHandler = new ConfirmHandler(){
public boolean handleConfirm(Page page, String message) {
return true;
}
};
webClient.setConfirmHandler(okHandler);
Run Code Online (Sandbox Code Playgroud)
有一个下载文件的链接.
<a href="./my_file.php?mode=xls&w=d2hlcmUgc2VsbElkPSd3b3JsZGNvbScgYW5kIHN0YXR1cz0nV0FJVERFTEknIGFuZCBkYXRlIDw9IC0xMzQ4MTUzMjAwICBhbmQgZGF0ZSA%2BPSAtMTM1MDgzMTU5OSA%3D" target="actionFrame" onclick="return confirm('Do you want do download XLS file?')"><u>Download</u></a>
Run Code Online (Sandbox Code Playgroud)
我点击链接使用
HTMLPage x = webClient.getPage("http://working.com/download");
HtmlAnchor anchor = (HtmlAnchor) x.getFirstByXPath("//a[@target='actionFrame']");
anchor.click();
Run Code Online (Sandbox Code Playgroud)
handeConfirm()方法已被执行.但我不知道如何从服务器保存文件流.我尝试使用下面的代码查看流.
anchor.click().getWebResponse().getContentAsString();
Run Code Online (Sandbox Code Playgroud)
但是,结果与页面x相同.任何人都知道如何从服务器捕获流?谢谢.