我正在尝试使用HtmlUnit在javascript按钮后面下载附件。执行其他任务效果很好(例如,导航,登录)。我检查了附件单元测试,但没有帮助我。
final WebClient webClient = new WebClient(BrowserVersion.FIREFOX_24);
final HtmlPage page1 = webClient.getPage( loginUrl );
final HtmlTextInput textField = page1.getElementByName(user);
final HtmlPasswordInput pwd = page1.getElementByName(pwd);
textField.setValueAttribute(User.getUsername());
pwd.setValueAttribute(User.getPassword());
final HtmlSubmitInput button = page1.getElementByName(login);
final HtmlPage page2 = button.click();
String buttonJavaScript = "window.location='"+folder+filename + ....... ";
ScriptResult result = page2.executeJavaScript(buttonJavaScript);
webClient.waitForBackgroundJavaScript(2000);
InputStream is = result.getNewPage().getWebResponse().getContentAsStream();
try {
File f = new File("filename.extension");
OutputStream os = new FileOutputStream(f);
byte[] bytes = new byte[1024];
while (read == is.read(bytes)) {
os.write(bytes, 0, read);
}
os.close();
is.close();
} catch (IOException ex) {
// Exception handling
}
但是,它的结尾是:
runtimeError: message=[No node attached to this object] sourceName=[http://pagead2.googlesyndication.com/pagead/osd.js] line=[7] lineSource=[null] lineOffset=[0]
创建的文件大小为0。必须有一种方法可以获取附加的真实文件?!
先感谢您
以防万一其他人想知道:您需要使用AttachmentHandler。
ScriptResult result = page2.executeJavaScript(buttonJavaScript);
webClient.waitForBackgroundJavaScript(1000);
if( attachments.size() > 0 )
{
Attachment attachment = attachments.get(0);
Page attachedPage = attachment.getPage();
WebResponse attachmentResponse = attachedPage.getWebResponse();
String content = attachmentResponse.getContentAsString();
... write(content);
}
我需要使用htmlUnit webDriver在不同页面中下载不同的文件。我在页面上循环,对于每个页面,我都单击输入字段以触发下载。对于第一次下载,我单击HtmlInputElement(提交按钮),它会将文件还给我。之后,HtmlPage变成了未预期的页面。检查UnexcpetedPage中的Web响应,我仍然发现文件已经下载。如何解决? 代码:[……]
问题内容: 我正在尝试在www.meetme.com上发送消息,但不知道该怎么做。我可以在评论区域中键入消息,但是单击“发送”按钮不会执行任何操作。我究竟做错了什么?当我登录并按登录按钮时,页面确实发生了变化,一切都很好。有人有任何想法或线索吗? 问题答案: 如果不了解正在访问的网页,就无法在禁用JavaScript的情况下执行AJAX请求。如果更改未成功,则必须继续进行调试,但请确保已启用Jav
问题内容: 我刚开始使用Flask / Python。我想要实现的是在HTML中有一个下载按钮,它调用以下函数: 不完整的Flask代码为: 我面临的问题是我找不到下载此csv文件或将其作为JSON字符串返回的方法,因此可以使用Javascript下载。知道如何将其作为JSON发送或通过Flask本身下载吗?最好的方法是什么? 问题答案: 这是一种不使用Javascript下载CSV文件的方法:
我目前正在做一个个人投资组合,我试图制作一个按钮,如果你点击它,应该下载一份简历。 代码 让用户下载该文件。 我在REACTJS中工作,创建react应用程序
这是疯狂的,但我不知道如何做到这一点,因为如何常见的词,很难找到我需要的搜索引擎。我想这应该是一个很容易回答的问题。 我想要一个简单的文件下载,这将做同样的如下: 但我想使用HTML按钮,例如: 同样,是否可以通过JavaScript触发一个简单的下载? 我绝对不是在寻找一种方法来创建一个看起来像按钮的锚,使用任何后端脚本,或者混乱服务器头或mime类型。
我是一个新手,我正在尝试创建一个应用程序来在我的投资组合中使用。本质上,该程序是一个可以访问不同菜单的菜单(json文件:texas_pick.js,Breakth.js…),该程序旨在以按钮的形式显示菜单选项,按钮的详细信息从各自的json文件中检索。我面临的问题是,单击菜单选项时,会检索最后一个菜单项的数据。我将后端编程为只将商品名称和价格推送到数据库,而前端则检索这些数据并将其显示在表上。检